Django: NoReverseMatch -> Реверс для 'password_reset_done' не найден. 'password_reset_done' не является допустимой функцией просмотра или именем шаблона - PullRequest
0 голосов
/ 03 мая 2018

При посещении http://localhost:8000/reset-password/ я получаю следующую ошибку:

NoReverseMatch at / reset-password /

Реверс для 'password_reset_done' не найден. 'password_reset_done' не является допустимой функцией просмотра или именем шаблона.

Но, если я посещаю http://localhost:8000/reset-password/done/, это не показывает ошибки.

from django.conf.urls import url
from account import views
from django.contrib.auth.views import (
    login,
    logout,
    password_reset,
    password_reset_done,
    password_reset_confirm,
    password_reset_complete,
)


urlpatterns = [
    url(r'^register/$', views.register_view, name='register'),
    url(r'^login/$', login, {'template_name': 'account/login.html'}, name='login'),
    url(r'^logout/$', logout, {'template_name': 'home.html',
        'next_page': '/login'}, name='logout'),
    url(r'^profile/$', views.view_profile, name='profile'),
    url(r'^profile/edit/$', views.edit_profile, name='edit_profile'),
    url(r'^profile/change-password/$', views.change_password, name='change_password'),
    url(r'^reset-password/$', password_reset, name='reset_password'),
    url(r'^reset-password/done/$', password_reset_done, name='reset_password_done'),
    url(r'^reset-password/confirm/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
        password_reset_confirm, name='reset_password_confirm'),
    url(r'^reset-password/complete/$', password_reset_complete, name='reset_password_complete'),

]

Пожалуйста, помогите мне решить эту ошибку. Я использую django vesion 2.0.2.

Заранее спасибо.

1 Ответ

0 голосов
/ 03 мая 2018

Опечатка здесь : у вас нет так называемого url_name = password_reset_done, у вас есть reset_password_done

 url(r'^reset-password/done/$', password_reset_done, name='reset_password_done'),
...