Изменяем password views

Мы также нуждаемся в том, чтобы пользователи могли менять свой пароль после входа на наш сайт. Откройте файл urls.py приложения account и добавьте к нему следующие шаблоны URL-адресов:

# change password urls
url(r'^password-change/$', 'django.contrib.auth.views.password_change', name='password_change'),
url(r'^password-change/done/$', 'django.contrib.auth.views.password_change_done', name='password_change_done'),

Представление password_change будет обрабатывать форму, чтобы изменить пароль, а password_change_done будет отображать сообщение об успешной смене пароля. Создадим шаблон для каждого представления.

Добавьте новый файл в директорию templates/registration/ приложения account и назовите его password_change_form.html:

{% extends "base.html" %}

{% block title %}Change you password{% endblock %}

{% block content %}
    <h1>Change you password</h1>
    <p>Use the form below to change your password.</p>
    <form action="." method="post">
        {{ form.as_p }}
        <p><input type="submit" value="Change"></p>
        {% csrf_token %}
    </form>
{% endblock %}

Этот шаблон включает в себя форму для изменения пароля. Теперь создайте другой файл в том же каталоге и назовите его password_change_done.html. Добавьте в него следующий код:

{% extends "base.html" %}

{% block title %}Password changed{% endblock %}

{% block content %}
    <h1>Password changed</h1>
    <p>Your password has been successfully changed.</p>
{% endblock %}

В этом шаблоне отображается сообщение об успешной смене пароля.

Откройте в своем браузере страницу http://127.0.0.1:8000/account/password-change/ . Если вы не авторизованы в системе вы увидите страницу входа. После успешной авторизации вы увидите страницу смены пароля:

Заполните все поля формы и нажмите на кнопку Change. Вы увидите сообщение об успешной смене пароля:

Выйдите из системы, а затем войдите используя новый пароль чтобы убедиться в правильной работе нашего приложения.

results matching ""

    No results matching ""