当我点击提交表单时,我收到了这个错误
when i click on submit forms then i got this error
我在 Django 的表单中遇到属性错误,之后我卡住了,请帮助我解决这个问题
我的views.py文件
tasks=['sleep','drink','code']
class newforms(forms.Form):
task=forms.CharField(label='new_task',max_length=100)
def add(request):
if request.method=='POST':
form=newforms(request.method)
if form.is_valid():
task=form.cleaned_data['task']
tasks.append(task)
else:
return render(request,'add.html',{
'form':form
})
return render(request,'add.html',{
'form':newforms()
})
错误显示
您应该将 request.POST
作为数据传递给表单(或 request.GET
,或其他类似字典的对象),而不是 request.method
:
def add(request):
if request.method == 'POST':
form = newforms(<b>request.POST, request.FILES</b>)
if form.is_valid():
task = form.cleaned_data['task']
tasks.append(task)
else:
form = newforms()
return render(request,'add.html',{'form': form})
也就是说,使用列表 不是 一个好主意。你在这里介绍global state。这使得程序不可预测,但也意味着当您重新启动服务器时数据不会持久存在。如果您以后使用多个 worker,则意味着一个 worker 与另一个 worker 具有不同的状态。
我在 Django 的表单中遇到属性错误,之后我卡住了,请帮助我解决这个问题
我的views.py文件
tasks=['sleep','drink','code']
class newforms(forms.Form):
task=forms.CharField(label='new_task',max_length=100)
def add(request):
if request.method=='POST':
form=newforms(request.method)
if form.is_valid():
task=form.cleaned_data['task']
tasks.append(task)
else:
return render(request,'add.html',{
'form':form
})
return render(request,'add.html',{
'form':newforms()
})
错误显示
您应该将 request.POST
作为数据传递给表单(或 request.GET
,或其他类似字典的对象),而不是 :request.method
def add(request):
if request.method == 'POST':
form = newforms(<b>request.POST, request.FILES</b>)
if form.is_valid():
task = form.cleaned_data['task']
tasks.append(task)
else:
form = newforms()
return render(request,'add.html',{'form': form})
也就是说,使用列表 不是 一个好主意。你在这里介绍global state。这使得程序不可预测,但也意味着当您重新启动服务器时数据不会持久存在。如果您以后使用多个 worker,则意味着一个 worker 与另一个 worker 具有不同的状态。