Django 2.1.3 ссылка для сброса пароля не отображается - PullRequest
0 голосов
/ 28 ноября 2018

После обновления до Django 2.1.3 я заметил «Забыли пароль или имя пользователя?»ссылка отсутствовала на странице входа администратора.После некоторых исследований я обнаружил, что модуль django.contrib.auth.urls.py использовал имя password_reset для URL-адреса сброса, в то время как в шаблоне django/contrib/admin/templates/admin/login.html URL-адрес имел имя admin_password_reset:

django.contrib.auth.urls.py (строка 16)

path('password_reset/', views.PasswordResetView.as_view(), name='password_reset'),

django / contrib / admin / templates / admin / login.html (начиная со строки 54)

{% url 'admin_password_reset' as password_reset_url %}
{% if password_reset_url %}
<div class="password-reset-link">
<a href="{{ password_reset_url }}">{% trans 'Forgotten your password or username?' %}</a>
</div>
{% endif %}

Когда я изменил admin_password_reset на password_reset в Django login.html, ссылка появилась на странице входа в систему и работала, как и ожидалось.

В моем urls.py у меня есть:

path('lodging/', include('django.contrib.auth.urls')),

Мой проект не имеет других изменений в системе аутентификации.Это ошибка или я что-то упустил?

Обновление

Я проверил один из моих старых проектов Django (v1.11), и существует то же самое: login.html показывает admin_password_reset и auth.urls показывает password_reset.Кроме того, ссылка «Забыли пароль» не отображается на странице входа.Кроме того, «grepping» для admin_password_reset во всем исходном коде Django возвращает только файл login.html.

Так что я точно что-то не так делаю.

...