Django,遍历所有表单错误
Posted
技术标签:
【中文标题】Django,遍历所有表单错误【英文标题】:Django, loop over all form errors 【发布时间】:2011-01-28 14:01:10 【问题描述】:在我的模板中,我想遍历所有表单错误,包括不属于特定字段的错误。 (这意味着对于 form.errors,它也应该显示 __all__
错误)
我尝试了几个版本,即:
<div id="msg">
% if form.errors %
<div class="error">
<p><span>ERROR</span></p>
<ul>
% for key,value in form.errors %
% for error in value %
<li> error </li>
% endfor %
% endfor %
</ul>
</div>
% endif %
</div>
仍然没有成就,如果有任何建议,我将不胜感激。
【问题讨论】:
【参考方案1】:Django 中的表单错误被实现为ErrorDict
实例(它只是dict
的子类,带有附加功能)。尝试对循环语法的模板稍作调整:
% for key, value in form.errors.items %
【讨论】:
【参考方案2】:您是否正在寻找form.non_field_errors
?这就是您可以访问与特定字段无关的错误的方式。
% if form.non_field_errors %
<ul>
form.non_field_errors.as_ul
</ul>
% endif %
检查forms.py test suite 以及另一个示例。搜索form.non_field_errors
【讨论】:
以上是关于Django,遍历所有表单错误的主要内容,如果未能解决你的问题,请参考以下文章