解析Django模板的错误信息?

时间:2010-09-14 05:12:43

标签: django

我是Django的新手。我正在编写一个具有表单的示例应用程序,提交该表单然后将数据保存到数据库中。在允许保存数据之前,我的表单需要进行验证。所以我的问题是如何将错误消息(由验证生成)传递给视图?欢迎任何建议。谢谢!

1 个答案:

答案 0 :(得分:3)

您使用的是Form个实例吗?然后,您可以在模板中呈现表单,并自动显示错误消息。例如:

# views.py
def my_view(request, *args, **kwargs):
    if request.method == 'POST':
        form = MyForm(request.POST.copy())
        if form.is_valid():
            # Save to db etc.
    elif request.methof == 'GET':
        form = MyForm()

    return render_to_response(..., {'form' : form})

在模板中:

{{ form.as_p }}

您将注意到,如果表单不是vald(is_valid()返回False),则视图将继续将表单(有错误)返回给模板。然后在调用form.as_p时在模板中呈现错误。

**更新**

正如@Daniel所说:

  

即使您没有使用form.as_p,也可以使用form.errorsform.fieldname.errors的每个字段获取整个表单的错误。