擅长:python、mysql、java
<p>我看不出一个简单的方法。</p>
<p>表单的errors属性实际上返回一个<code>ErrorDict</code>,一个在<code>django.forms.utils</code>中定义的类-它是<code>dict</code>的一个子类,知道如何将自己的ul呈现为其unicode表示。但键实际上是字段名,这对于其他行为的维护很重要。因此,它无法轻松访问字段标签。</p>
<p>您可以定义一个接受表单的自定义模板标记来生成您喜欢的呈现,因为在Python代码中,很容易获得给定表单和字段名的字段标签。或者可以在视图中按标签构造一个错误列表,将其添加到上下文中,然后改用它。</p>
<p><em>编辑</em>
另外,您还可以遍历字段并检查它们各自的错误,同时记住显示<code>non_field_errors</code>。类似于:</p>
<pre><code><ul class="errorlist">
{% if form.non_field_errors %}
<li>{{ form.non_field_errors }}</li>
{% endif %}
{% for field in form %}
{% if field.errors %}
<li>
{{ field.label }}
<ul class="errorlist">
{% for error in field.errors %}
<li>{{ error }}</li>
{% endfor %}
</ul>
</li>
{% endif %}
{% endfor %}
</ul>
</code></pre>
<p>您可能还需要将非字段错误包装到列表中,具体取决于。</p>