小编dpb*_*lyn的帖子

Django ModelForm没有指定模型类

我正在尝试使用ModelForm:

from django.db import models
from django.forms import ModelForm

class Car(models.Model):
    carnumber = models.CharField(max_length=5)

    def __unicode__(self):
        return self.carnumber

class PickForm(ModelForm):
    class Meta:
        Model = Car`
Run Code Online (Sandbox Code Playgroud)

我检查了这个,我找不到我的错误.当我在浏览器中调用视图时,它会给我以下错误:

ModelForm has no model class specified
Run Code Online (Sandbox Code Playgroud)

我已经测试了在同一个URL上用简单的"foo bar"代码调用模型的视图,但是当我尝试这个代码时,我得到了上面的类错误.

python django modelform

24
推荐指数
4
解决办法
3万
查看次数

csrf token 跟进

您好,提前谢谢您。这是以下线程的后续问题(不确定我是否应该在那里发布或开始一个新线程......:

即使我有 {% csrf_token %},CSRF 令牌仍丢失或不正确

我不确定需要如何处理代码才能使 csrfContext 工作。我正在尝试使用 ModelForm 将数据收集到模型并将其写入 MYSQL 表。我收到错误:

失败原因给出:
    CSRF 令牌丢失或不正确。

这是代码:

    从 django.shortcuts 导入 render_to_response
    从 djengo.template 导入 RequestContext
    从 django.http 导入 HttpResponse、HttpRequest、HttpResponseRedirect
    从 acmetest.models 导入 Player
    从 acmetest.models 导入 PickForm

    csrfContext = RequestContext(请求)
    返回 render_to_response('makepick.html', csrfContext)

    def playerAdd(请求, id=None):
        form = PickForm(request.POST 或 None,
                           instance=id 和 Player.objects.get(id=id))

        # 保存新的/编辑过的选择
        如果 request.method == 'POST' 且 form.is_valid():
            表单.save()
            返回 HttpResponseRedirect('/草稿/')

        返回 render_to_response('makepick.html', {'form':form})

再次,

感谢您的帮助!

德普克林

python django django-csrf

5
推荐指数
1
解决办法
684
查看次数

Django在模板中显示render_to_response

您好,并提前感谢您.

我知道这是完全noob问题,我已经在各种论坛中搜索并阅读并重新阅读了文档,所以请保持温和.

我有一个观点:

#views.py

from django.shortcuts import render_to_response
from django.shortcuts import render
from django.http import HttpResponse, HttpRequest, HttpResponseRedirect
from acme.acmetest.models import Player
from acme.acmetest.models import PickForm

def playerAdd(request, id=None):
    form = PickForm(request.POST or None,
                       instance=id and Player.objects.get(id=id))

    # Save new/edited pick
    if request.method == 'POST' and form.is_valid():
        form.save()
        return HttpResponseRedirect('/draft/')

    #return render_to_response('makepick.html', {'form':form})
    return render(request, 'makepick.html', {'form':form})

def draftShow(request):
    draft_list = ['1', 'hello', 'test', 'foo', 'bar']
    #draft_list = Player.objects.all()
    #return render_to_response('makepick.html', {'draft_list' :draft_list}, context_instance=RequestContext(request))
    return render_to_response('makepick.html', {'draft_list' :draft_list})
Run Code Online (Sandbox Code Playgroud)

我试图让它渲染到模板.html页面:

#makepick.html …
Run Code Online (Sandbox Code Playgroud)

python django views render-to-response

5
推荐指数
1
解决办法
6607
查看次数

Django在网页上的两个视图

您好,并提前感谢您,

我非常喜欢Django/Python noobie.我只需要指导,不一定是答案.我已经阅读了所有相关文档,但我似乎无法找到我想要做的简明例子.

我有两个视图,一个是表单,另一个是列出数据库表中包含的数据的视图.我试图在用户调用URLS页面中列出的一个URL的同一网页上显示这两个视图.我确信这是可能的,我同样确信我遗漏了一些基本的东西.

谢谢您的帮助.

DP

python django django-urls django-views

2
推荐指数
1
解决办法
1245
查看次数

Django表单未提交

我有一个Django模型/视图/表单在模板中正确呈现,但它没有提交输入到数据库的数据.任何有关这方面的帮助将不胜感激!

#models.py

from django.db import models
from django.forms import ModelForm

class UserRegistration(models.Model):
    user_first = models.CharField(max_length=50)
    user_last = models.CharField(max_length=50)
    user_email = models.EmailField()
    #user_fantasyhost = models.CharField(max_length=50)

    def __unicode__(self):
        return u'%s %s %s' % (self.user_first, self.user_last, self.user_email)

class RegForm(ModelForm):
    class Meta:
        model = UserRegistration

#views.py

from django.shortcuts import render_to_response
from django.shortcuts import render
from django.http import HttpResponse, HttpRequest, HttpResponseRedirect
from acme.dc_django.models import UserRegistration
from acme.dc_django.models import RegForm

def regPage(request, id=None):
    form = RegForm(request.POST or None,
                       instance=id and UserRegistration.objects.get(id=id))

    if request.method == 'POST' and …
Run Code Online (Sandbox Code Playgroud)

html django django-forms

2
推荐指数
1
解决办法
8320
查看次数

Django表单不呈现

您好,并提前感谢您.我有一个不在模板上渲染的django表单."提交"按钮呈现,但表单没有.我一直在盯着这个代码大约6个小时,它可能很简单,我可能需要另外一双眼睛.

我的型号:

#models.py

from django.db import models
from django.forms import ModelForm

class DraftInput(models.Model):
    player_id = models.IntegerField(help_text = 'Input Player ID Number', max_length = 5)

    def __unicode__(self):
        return self.player_id

class DraftForm(ModelForm):
    class Meta:
        model = DraftInput 
Run Code Online (Sandbox Code Playgroud)

我的观点:

#views.py

from django.shortcuts import render_to_response

from simple.models import DraftInput
from simple.models import DraftForm

from django.template import RequestContext

#...    

def draft_view(request):

    if request.method == 'POST':
        form = DraftForm(request.POST)
        if form.is_valid():
            form.save()
    else:
        form = DraftForm()

    return render_to_response('simple/draft_input.html', {'form': form} )
Run Code Online (Sandbox Code Playgroud)

我的模板:

#draft_input.html

#...

        <h1>Draft Input</h1> …
Run Code Online (Sandbox Code Playgroud)

python django django-forms

0
推荐指数
1
解决办法
7493
查看次数