Nun*_*147 6 django django-forms
我想在我的模板上获取非html版本中表单的错误.
默认情况下,错误是<ul class="errorlist">我要避免的总结.
无论如何要做到这一点没有大规模的代码更改?
Ada*_*eod 16
Django 1.7中有两种新方法也可用于解决此问题:
>>> f.errors.as_data()
{'sender': [ValidationError(['Enter a valid email address.'])],
'subject': [ValidationError(['This field is required.'])]}
Run Code Online (Sandbox Code Playgroud)
>>> f.errors.as_json()
{"sender": [{"message": "Enter a valid email address.", "code": "invalid"}],
"subject": [{"message": "This field is required.", "code": "required"}]}
Run Code Online (Sandbox Code Playgroud)
{% if form.subject.errors %}
<ol>
{% for error in form.subject.errors %}
<li><strong>{{ error|escape }}</strong></li>
{% endfor %}
</ol>
{% endif %}
Run Code Online (Sandbox Code Playgroud)
替换form为您在模板中调用表单类的任何内容.在此示例中,subject是表单中的字段.如果您想要一个单独的部分来总结所有错误,只需循环遍历字段:
{% if form.errors %}
{% for field in form %}
{% for error in field.errors %}
{{ error|escape }}
{% endfor %}
{% endfor %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6575 次 |
| 最近记录: |