我收到错误,我疯了!
我创建了一个与模型相关联的表单。每次,当我在views.py上执行form.is_valid()函数时,django会显示以下错误:
Exception Type: AttributeError
Exception Value: 'unicode' object has no attribute 'get'
models.py
from django.db import models
class Register(models.Model):
email = models.CharField(max_lenght=100)
forms.py
from django.form import ModelForm
from models.models import Register
class RegisterForm(ModelForm):
class Meta:
model = Register
views.py
from django.shortcuts import render_to_response
from models.models import Register
from register.forms import RegisterForm
def register(request):
if 'user_email' in request.POST:
form = RegisterForm(request.POST['user_email'])
if form.is_valid():
form.save()
retunr render_to_response('registered.html')
return render_To_response('main.html')
PS_1:我在另一个页面中显示该表单的值,以检查它是否只包含电子邮件,没关系,它只包含电子邮件。
PS_2:request.POST包含'user_email'确定。
拜托,你能帮我解决一下吗?
提前致谢。
答案 0 :(得分:0)
这一行:
form = RegisterForm(request.POST['user_email'])
不正确。 Form
应该传递完整的映射。
form = RegisterForm(request.POST)
字段名称将有所不同,但这是一个单独的问题(因为您似乎在页面中输出表单)。