如何使用Crispy Forms返回包含错误消息的表单。我无法使用FormView,因为我正在尝试将多个模型表单添加到同一个标记中。
class Test(TemplateView):
template_name = 'login.html'
def get(self, request, *args, **kwargs):
form = RegistrationForm()
return render(request, self.template_name, {'form': form})
def post(self, request, *args, **kwargs):
form = RegistrationForm(request.POST)
if form.is_valid():
print 'valid'
else:
form = RegistrationForm()
print self.get_context_data()
for x in self.get_context_data():
print type(x)
print form.errors
return render(request, self.template_name,{'form': form})
答案 0 :(得分:1)
表单无效时,请勿创建新表单。它会覆盖包含错误的绑定表单。
如果删除该行,那么无论您在模板中使用{{ form }}
还是脆弱表单,表单都会显示错误。
def post(self, request, *args, **kwargs):
form = RegistrationForm(request.POST)
if form.is_valid():
# do something with form, then redirect
else:
form = RegistrationForm() # remove this line
return render(request, self.template_name, {'form':form})