встроенные возможности.
urls.py
path('password_reset/',
auth_views.PasswordResetView.as_view(
template_name='registration/password_reset_form.html',
email_template_name='registration/password_reset_email.html',
success_url=reverse_lazy('account:password_reset_complete'),
),
name='password_reset'),
path('password_reset/done/',
auth_views.PasswordResetDoneView.as_view(),
name='password_reset_done'),
path('reset/<uidb64>/<token>/',
auth_views.PasswordResetConfirmView.as_view(),
name='password_reset_confirm'),
path('reset/done/',
auth_views.PasswordResetCompleteView.as_view(),
name='password_reset_complete'),
рейзит ошибку вида:
NoReverseMatch at /account/reset/done/
Reverse for 'login' not found. 'login' is not a valid view function or pattern name.
Кто-то сталкивался с подобным?
Привет с гх :)
Даров
не может найти УРЛ login, а вообще в джанге уже это реализовано https://github.com/django/django/blob/master/django/contrib/auth/views.py#L334
Ты просто не тот url вводишь
Я логин переопределил, поэтому так всё ок. Во вьюхе есть логин функция. Должно находить
он ищет УРЛ login и вью которая его отрабатывает. Кароч у тебя редирект происходит на login а найти его не может, 99%
А как пофиксить? Я что-то не врубаюсь, извините
Добавить в урлс path('my_path', myViev.asview(), name='login') и реализовать myViev, если я не ошибся)))
Есть такое
покажи urls.py
https://dpaste.com/DJQXTE252
думаю он его не видит тк ты его в неймспайс вынес app_name = 'account' либо тут убери namespace либо в редиректе добавь redirect('accounts:login')
в LoginView?
нет, там откуда идет редирект на 'login'
Я вообще не понимаю откуда ошибка
Значит проблема в классе PasswordResetDoneView?
нет, ты используешь стандартные вью а там есть редиретк на 'login' а у тебя он теперь 'accounts:login' вот он его и не видит, смотри в какой момент ошибка вылазиит на какой вью либо там надо переопределить редирект либо убрать namespace
если не мучаться и убрать немспейс, можно будет как-то редиректиться на функцию конкретного приложения?
для начала попробуй убрать и проверь в этом ли дело, а редирект делается https://docs.djangoproject.com/en/3.1/topics/http/shortcuts/#redirect
Спасибо!
Вот думаю после смены пароля он тебя на логин редиректит тут https://github.com/django/django/blob/main/django/contrib/auth/views.py#L330
Обсуждают сегодня