2013-03-16 132 views
4

如何在模板中格式化django form.non_field_errors.as_text,而不将它们作为无序列表或附加到前面的*在模板中格式化django form.non_field_errors

{{ form.non_field_errors.as_text }}在文本前面显示*的错误。

django ticket也有助于解释为什么*不会被删除,但这并不能帮助我。我不想要*

{{form.non_field_errors}}和{{form.non_field_errors.as_ul}}都显示为一个无序列表,我不想要一个无序列表。

回答

12
{% for error in form.non_field_errors %} 
    {{error}} 
{% endfor %} 

当您将错误列表作为文本进行调用时,它会尝试将其显示为列表。只需遍历列表即可自行获取错误,以便应用自己的样式。它

更多信息的Django项目website

+0

很好的答案 - 谢谢。 +1 – nicorellius 2013-12-18 00:45:04

0

那么,在默认情况下Django的形式使用ErrorList作为error_classproof link)。正如你所看到的,它的as_text方法格式通过在星号前加星号来列出。

因此,您可以使用自己的as_text方法创建一些自定义error_class并以合适的方式将其传递到您的表单。