Python 显示ModelForms的django表单验证错误
我经常发现自己在视图中使用ModelForm来显示和转换视图。在模板中显示表单没有问题。我的问题是,当我使用这些方法时,表单通常不会使用is_valid方法进行验证。问题是我不知道是什么导致了验证错误 以下是视图中的一个基本示例:Python 显示ModelForms的django表单验证错误,python,django,forms,validation,Python,Django,Forms,Validation,我经常发现自己在视图中使用ModelForm来显示和转换视图。在模板中显示表单没有问题。我的问题是,当我使用这些方法时,表单通常不会使用is_valid方法进行验证。问题是我不知道是什么导致了验证错误 以下是视图中的一个基本示例: def submitrawtext(request): if request.method == "POST": form = SubmittedTextFileForm() if form.is_valid():
def submitrawtext(request):
if request.method == "POST":
form = SubmittedTextFileForm()
if form.is_valid():
form.save()
return render(request, 'upload_comlete.html')
return render(request, 'failed.html')
else:
form = SubmiittedTextFileForm()
return render(request, 'inputtest.html', {'form': form})
我知道表单没有验证,因为我被重定向到failed.html模板,但我不知道为什么。is\u valid是false。如何设置此项以显示表单验证错误 两件事:
邮件
def submitrawtext(request):
if request.method == "POST":
form = SubmittedTextFileForm(request.POST)
if form.is_valid():
form.save()
return render(request, 'upload_comlete.html')
else:
print form.errors #To see the form errors in the console.
else:
form = SubmittedTextFileForm()
# If form is not valid, this would re-render inputtest.html with the errors in the form.
return render(request, 'inputtest.html', {'form': form})
我遇到了同样恼人的问题,并通过返回带有HttpResponse的
form.errors.values()
来解决它。代码如下:
@csrf\u豁免
def post(请求):
form=UserForm(request.POST)
如果form.is_有效():
返回HttpResponse('All Good!')
其他:
返回HttpResponse(form.errors.values())#验证失败
在我的情况下,它返回:
- 此字段是必填字段。
- 此字段是必填字段。
- 此字段是必填字段。
- 此字段是必填字段。
它提供的信息不多,但足以给你一个想法