Python 如何在Django中显示一个表单错误
我的模板中有这个,我只想显示用户名错误,而不是所有表单错误Python 如何在Django中显示一个表单错误,python,django,Python,Django,我的模板中有这个,我只想显示用户名错误,而不是所有表单错误 {% for field in form %} {% for error in field.errors %} <div class="row"> <div class="small-12 columns val-error-msg error margin-below"> {{ error }} </d
{% for field in form %}
{% for error in field.errors %}
<div class="row">
<div class="small-12 columns val-error-msg error margin-below">
{{ error }}
</div>
</div>
{% endfor %}
{% endfor %}
{%用于表单%]中的字段
{%字段中有错误。错误%}
{{error}}
{%endfor%}
{%endfor%}
您可以使用form.field\u name.errors
比如:
{%if form.username.errors%}
{{form.username.errors}
#或
#{{form.username.errors.as_text}
#这将删除django默认生成的`
`标记
{%endif%}
任何字段都附带了。错误
。但请注意,每个字段都可能包含多个错误(例如,密码可能太短,并且包含非法符号)
您可以通过{{form.field.errors}}
访问这些错误,但您已经获得了这些元素。如果您希望在模板中筛选以仅显示用户名
字段的错误,则可以使用{%if…%}
语句执行此操作:
{% for field in form %}
{% if field.name == "username" %}
{% for error in field.errors %}
<div class="row">
<div class="small-12 columns val-error-msg error margin-below">
{{ error }}
</div>
</div>
{% endfor %}
{% endif %}
{% endfor %}
{%用于表单%]中的字段
{%if field.name==“username”%}
{%字段中有错误。错误%}
{{error}}
{%endfor%}
{%endif%}
{%endfor%}
它起作用了,但是我怎么能忽略这个字段是必需的。error@ChamsAgouni:通过将表单中的required
选项设置为False
。为什么要在模板中忽略这一点?这是错误的地方,因为没有显示错误,不会突然得到验证的形式。因为我想这样做jquery@ChamsAgouni,正如Willem Van Onsem所说,您可以通过将required=False
设置为所需字段来忽略所需内容。让Jquery这样做不是一个好主意,因为用户可以通过浏览器中的Inspect元素
轻松编辑表单。除非jquery在提交表单之前检查需求,否则所有的逻辑都必须转到后端,Django还将检查如何将此字段改为用户名字段
{% for field in form %}
{% if field.name == "username" %}
{% for error in field.errors %}
<div class="row">
<div class="small-12 columns val-error-msg error margin-below">
{{ error }}
</div>
</div>
{% endfor %}
{% endif %}
{% endfor %}