如何调试我的Django UserCreationForm?

时间:2013-05-26 09:09:44

标签: django django-forms

我有以下代码段:

    if form.is_valid():
        new_user = form.save()
        return HttpResponseRedirect("/books/")
    else:
        print "invalid form"

目前正在打印“无效表格”。如何进一步调试以找出表单实际上无效的内容?

1 个答案:

答案 0 :(得分:0)

对于与表单中的字段相关的错误:

for field, error in form.errors.items():
    print field, error

您的表单也可以have errors that are not associated with a field

  

请注意,Form.clean()覆盖引发的任何错误都不会与任何字段相关联。它们进入一个特殊的“字段”(称为 all ),如果需要,可以通过non_field_errors()方法访问它。如果要将错误附加到表单中的特定字段,则需要访问表单上的_errors属性,稍后将对此进行描述。

所以你可以使用:

for error in form.non_field_errors():
    print error

打印那些