2014-12-11 2 views
2

Я установил приложение Django-Registration-Redux в свой проект и настроил базовый сервер регистрации по умолчанию, и он работал до сих пор. Теперь я хочу расширить функциональность моего приложения, добавив механизм изменения пароля. Любая идея или ссылка, где я могу начать искать.Функция сброса пароля Приложение Django-Registration-Redux

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

PD: Django-учетно-перевождь документация не относится к данной теме.

ответ

4

Может быть это ссылки будут полезны: https://github.com/django/django/blob/master/django/contrib/auth/urls.py https://github.com/django/django/blob/master/django/contrib/auth/views.py И мне нужно, по крайней мере 10 reputatuion размещать более 2 ссылки Так третья ссылка на GitHub тоже: /Джанго/Джанго/дерево/хозяин/django/contrib/admin/templates/registration

+0

Я решил проверить некоторые примеры кода. Спасибо, что я голосовал за ваш ответ, хотя –

4

django-registration-redux также поддерживает функцию изменения пароля. Для изменения пароля URL-адрес составляет http://your-port-number/accounts/password/change. В вашем локальном хосте после ввода http://your-port-address/accounts/ вы получите всю информацию о сопоставлениях url на экране itslef. Используя эти сопоставления url, вы можете написать конкретные html-шаблоны и напрямую использовать их в своем приложении. Шаблоны регистрации можно найти here Надеюсь, это поможет.

0

Книга «Танго с Джанго» по Leif Аццопарди и Дэвид Максвелл содержит хороший пример использования «Django-регистрации-Redux приложения» в главе 11. В этой главе подробно описывается - процесс установки/настройки этот модуль и параметры настройки, представления & URL-адреса в четком и сжатом виде.

Согласно книге, модуль «Django-Registration-Redux» не предоставляет шаблонов для URL-адресов, которые он предоставляет. Вам необходимо создать эти шаблоны вручную - , потому что они обычно применяются к конкретным приложениям. (Вы должны создать в каталоге шаблонов вашего проекта каталог с именем .) Вы также должны увидеть Anders Hofstee's Templates, чтобы получить некоторые подсказки для создания собственных шаблонов. Шахта выглядит следующим образом (основана на его шаблоне):

# <my_django_project_directory>/templates/accounts/password_change_form.html 

{% extends "<my_app_name>/base.html" %} 
{% block body_block %} 
    <h1>Change your password</h1> 
    <form method="post" action="."> 
    {% csrf_token %} 
    {{ form.as_p }} 
    <input type="submit" value="Submit" /> 
    </form> 
{% endblock %} 

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

url(r'^accounts/', include('registration.backends.simple.urls')), 

Как объяснялось более ранними ответами, для изменения пароля для зарегистрированного пользователя указывается http://<projects_root_url>/accounts/password/change. Вы должны указать этот url для зарегистрированного пользователя для доступа, обновив пункт меню. Продолжая с примерами книги, я обновил базовый шаблон, чтобы открыть URL Password Change. Рассмотрим следующий код:

# <my_django_project_directory>/templates/<my_app_name>/base.html 
{% if user.is_authenticated %} 
    <li><a href="{% url 'auth_logout' %}?next=/rango/">Logout</a></li> 
    <li><a href="/accounts/password/change/">Change Password</a></li> 
{% else %} 
    <li><a href="{% url 'auth_login' %}">Login</a></li> 
    <li><a href="{% url 'registration_register' %}">Sign Up</a></li> 
{% endif %} 

Надеюсь, это поможет! Если нет, то я настоятельно рекомендую вам ознакомиться с книгой, упомянутой выше! Простые примеры, простые в понимании инструкции и, самое главное, пример работает без особых усилий в любой конфигурации.

Примечание: Примеры книг основаны на версии 1.9 django. Моя ОС - Ubuntu 16.04 и версия python - 3.5.2. My repository, содержащий рабочий пример из книги.

Смежные вопросы