gpt4 book ai didi

Django 登录不显示错误

转载 作者:行者123 更新时间:2023-12-02 00:37:25 25 4
gpt4 key购买 nike

我知道有很多这样的问题,但没有一个包含明确的答案。我正在使用 Django 的默认身份验证,但无法显示“您的用户名/密码组合不正确”之类的内容。是否可以在不创建自定义 View 函数的情况下解决此问题?

我的 urls.py 看起来像这样:

    url(r'^login/$', auth_views.login, {'template_name': 'login.html'},
name='mysite_login')

然后我的login.html有如下代码:

{% block content %}
<section class="content">
<div class="container block">
<div class="row">
<div class="col-md-12"></div>
<form action="{% url 'mysite_login' %}" class="form-control" method="post" accept-charset="utf-8">
{% csrf_token %}
{% for field in form %}
<p>
{{ field.label_tag }}<br>
{{ field|addcss:'form-control' }}
{% if field.help_text %}
<small style="color: grey">{{ field.help_text|safe }}</small>
{% endif %}
{% for error in field.errors %}
<p style="color: red">{{ error }}</p>
{% endfor %}
</p>
{% endfor %}
<button type="submit" class="btn btn-dark">Login</button>

<input class="form-control" type="hidden" name="next" value="{{ next }}"><br>

</form>
</div>
</div>
</div>
</section>
{% endblock %}

所以这一切都有效,除了显示错误消息。我已经看到答案,您可以在其中编写自定义 View 函数和表单来解决此问题,但我认为在使用内置登录功能时也应该可行吗?非常感谢。

最佳答案

built-in login form不在单个字段级别显示错误;说只是密码错误是一种安全风险,因为它确认了特定用户名的存在。因此,错误在一般的 clean() 方法中出现,并通过 {{ form.non_field_errors }} 显示在模板中。

关于Django 登录不显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48823551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com