Django密码更改视图表单

我还是Django的新手,关于如何使用内置视图工作有一些问题 . 我注意到djang带有django.contrib.auth.views.password_change的内置密码更改视图 . 此视图在模板的背景中显示管理站点,而我想提供自己的css /模板,但保留该视图的形式和功能 . 我该怎么做?你能把东西传递到urls.py吗?

r'password_change/$', 'django.contrib.auth.views.password_change')

喜欢自定义模板?我不确定这样做的正确方法 .

回答(3)

2 years ago

您可以通过设置 template_name 参数来指定应该使用的模板:

(r'password_change/$', 'django.contrib.auth.views.password_change', {'template_name': 'path/to/password_reset.html'})

在您的模板中,请确保使用提供的 {{ form }} 模板变量,并且您很高兴 .

2 years ago

Django将首先尝试从您的应用程序加载模板,然后再回退 . 因此,要覆盖contrib.auth的模板,您只需:

  • 在模板目录中创建名为 auth 的目录 .

  • 创建与内置视图期望加载的名称相同的模板 .

  • 没有第3步 .

2 years ago

您还可以通过以下方式提供成功更改的网址:

url(r'^password/$', 'django.contrib.auth.views.password_change', {'post_change_redirect' : '/password-changed/','template_name': 'password.html'},),