我正在使用django.contrib.auth.views.LoginView
登录页面。密码或用户名不正确时,我无法显示验证错误。
views.py
from django.contrib.auth.views import LoginView
from django.shortcuts import reverse
class MyLoginView(LoginView):
template_name = 'login.html'
def get_success_url(self):
return reverse('home')
login.html
<form method="POST">
{{ csrf_token }}
{{ form.username }}
{{ form.password }}
<button type="submit">Login</button>
</form>
答案 0 :(得分:2)
这很有意义,因为您不会渲染错误。您可以使用以下方式呈现这些内容:
<form method="POST">
{{ csrf_token }}
{{ form.non_field_errors }}
{{ form.username.errors }}
{{ form.username }}
{{ form.password.errors }}
{{ form.password }}
</form>
但是,仅呈现表单本身可能更简单:
<form method="POST">
{{ csrf_token }}
{{ form }}
</form>
有关更多信息,请参见rendering form error messages section in the Django documentation。