Почему мой шаблон регистрации / reset_password_done.html не используется Django? - PullRequest
2 голосов
/ 09 августа 2011

У меня есть urls.py:

from django.contrib.auth.views import (password_reset, password_reset_done, 
                                       password_change, password_change_done)

 [...]
 urlpatterns += i18n_patterns('',   
        url(r'^accounts/password_reset/$', password_reset, 
             {'template_name': 'registration/password_reset.html',
              "post_reset_redirect": '/accounts/password_reset_done/' },
             name='reset-password'),
        url(r'^accounts/password_reset_done/$', password_reset_done, 
             {'template_name': 'registration/password_reset_done.html'},
             name="reset-password-done"))

И связанные шаблоны в приложении / templates / registration.

password_reset отображает мой шаблон, а password_reset_done - нет (показывает шаблон администратора с тем же именем). Запуск pdb в нем подтверждает, что передано правильное имя шаблона. Я трижды проверил название шаблона.

Ответы [ 2 ]

1 голос
/ 10 августа 2011

Как насчет изменения имени вашего password_reset_done.html, скажем, password_reset_done2.html и соответствующего изменения urls.py? Есть ли еще конфликт между этим и шаблоном администратора?

Кроме того, это может быть связано с тем, где происходит код urlpatterns + = i18n_patterns .... Происходит ли это до или после URL администратора по умолчанию:

(r'^admin/', include(<location of default admin urls>)),

.. или как там выглядит. Может быть, они переопределяют ваши пользовательские URL?

0 голосов
/ 10 августа 2011

Я наконец нашел ответ:

Загрузчик шаблона приложения отобразит первый найденный шаблон, соответствующий имени, этот порядок определяется порядком вашего приложения в INSTALLED_APPS.

Простое добавление имени моего приложения, содержащего мой шаблон, в начале INSTALLED_APPS решит проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...