项目的登录页是前同事自定义的,登录时用户名和密码错误时没有提示,体验不太好。
所以想加一个提示,刚开始看的django-suit的login.html源码没搞对,又看了一下django的login.html的源码搞定了,主要是通过non_field_errors字段实现的。
关于non_field_errors参考文档:
/en/1.9/topics/forms/#rendering-form-error-messages
/en/1.9/ref/forms/api/#django.forms.Form.non_field_errors
主要就是来收集那些非指定字段的错误
实现代码:
<div class="form-row">{% if form.non_field_errors %}{% for error in form.non_field_errors %}<p class="errornote" style="color: #9e1c23">{{ error }}</p>{% endfor %}{% endif %}</div>