РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
580 of 818 menu

PasswordChangeDoneView

Класс PasswordChangeDoneView является встроенным представлением (view) Django, которое отображает страницу подтверждения успешного изменения пароля пользователя. Оно наследуется от TemplateView и обычно используется вместе с PasswordChangeView. После успешной смены пароля пользователь перенаправляется на эту страницу, где отображается сообщение об успешном изменении пароля.

Синтаксис

from django.contrib.auth.views import PasswordChangeDoneView from django.urls import path urlpatterns = [ path('password-change/done/', PasswordChangeDoneView.as_view(), name='password_change_done'), ]

Параметры

Класс PasswordChangeDoneView принимает следующие параметры при настройке:

  • template_name - путь к шаблону для отображения страницы. По умолчанию используется шаблон 'registration/password_change_done.html'.
  • extra_context - словарь с дополнительными данными, которые передаются в шаблон.

Пример

Настроим URL-маршруты для смены пароля и страницы подтверждения:

from django.contrib.auth.views import PasswordChangeView, PasswordChangeDoneView from django.urls import path urlpatterns = [ path('password-change/', PasswordChangeView.as_view(), name='password_change'), path('password-change/done/', PasswordChangeDoneView.as_view(), name='password_change_done'), ]

Пример

Создадим шаблон для страницы подтверждения с именем 'registration/password_change_done.html':

{% extends "base.html" %} {% block content %} <h2>Пароль успешно изменен</h2> <p>Ваш пароль был успешно изменен.</p> <a href="{% url 'profile' %}">Вернуться в профиль</a> {% endblock %}

Пример

Используем собственный шаблон для страницы подтверждения:

from django.contrib.auth.views import PasswordChangeDoneView from django.urls import path urlpatterns = [ path('password-change/done/', PasswordChangeDoneView.as_view( template_name='custom/password_done.html' ), name='password_change_done' ), ]

Пример

Передаем дополнительные данные в шаблон с помощью параметра extra_context:

from django.contrib.auth.views import PasswordChangeDoneView from django.urls import path urlpatterns = [ path('password-change/done/', PasswordChangeView.as_view( extra_context={ 'title': 'Пароль обновлен', 'user_info': 'Ваш пароль был успешно изменен' } ), name='password_change_done' ), ]

Пример

Полный пример настройки изменения пароля с использованием представлений из пакета auth:

from django.contrib.auth.views import PasswordChangeView, PasswordChangeDoneView from django.urls import path from django.contrib.auth import views as auth_views urlpatterns = [ path('password-change/', PasswordChangeView.as_view( template_name='registration/password_change_form.html', success_url='/password-change/done/' ), name='password_change' ), path('password-change/done/', PasswordChangeDoneView.as_view( template_name='registration/password_change_done.html' ), name='password_change_done' ), ]

Смотрите также

  • класс PasswordChangeView,
    который отвечает за форму изменения пароля
  • класс LoginView,
    который обрабатывает аутентификацию пользователя
  • класс LogoutView,
    который осуществляет выход пользователя из системы
  • класс PasswordResetDoneView,
    который отображает страницу успешного сброса пароля
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить