Django 1.6 - 密码更改/重置模板

时间:2014-01-10 15:35:17

标签: python django

我想使用django的密码更改/重置视图,例如视图

django.contrib.auth.views.password_change

我需要创建一个名为

的模板
registration/password_change_form.html

问题是即使我在我的项目中实现了这个模板,django仍然显示管理网站的密码更改页面,我可以让django使用我的模板的唯一方法是将其重命名为不同的东西 - 比如注册/ password_change_form_1.html然后传递名称

url(r'^password/change/$',
    auth_views.password_change,
    {'template_name': 'registration/password_change_form_1.html',
     'password_change_form': MyPasswordChangeForm},
    name='password_change'),

我在这里遗漏了什么吗?当我使用默认名称时,为什么django不会使用我的模板?

3 个答案:

答案 0 :(得分:7)

我认为,因为您的应用位于django.contribute.admin中的INSTALLED_APP下。

答案 1 :(得分:0)

Django使用默认名称自动生成管理模板,因此,如果您使用管理员,则必须指定其他模板名称。

它无法找到你的模板,因为它被生成的模板覆盖了。

答案 2 :(得分:0)

添加设置

INSTALLED_APPS = (
    ...
    'registration',
)

TEMPLATE_DIRS = (
    ...
    "/home/user/templates",
)

添加目录模板" registration" base.html将包含模板和其他模板

在django == 1.5

中运行