python - 第一次尝试后未加载 Django 的密码重置 URL 自定义
问题描述
我正在使用 Django 的密码重置 URL,并为它们创建了自己的模板,但是在我输入电子邮件地址后,它会将我重定向到默认模板,而不是重定向到我的自定义模板。
网址.py
path('password_reset/',
auth_views.PasswordResetView.as_view(template_name="authsystem/password_reset.html"),
name='password_reset'),
path('password_reset/done',
auth_views.PasswordResetDoneView.as_view(template_name="authsystem/password_reset_sent.html"),
name='password_reset_done'),
path('reset/<uidb64>/<token>/',
auth_views.PasswordResetConfirmView.as_view(template_name="authsystem/password_reset_form.html"),
name='password_reset_confirm'),
path('reset/done/',
auth_views.PasswordResetCompleteView.as_view(template_name="authsystem/password_reset_done.html"),
name='password_reset_complete'),
在它从“password_reset.html”移动之后,它应该呈现“password_reset_sent.html”,但它会呈现 Django 的默认模板。
解决方案
在不更改 url 模式的情况下,您可以在以下位置为 PasswordResetDoneView 创建自定义模板:templates/registration/password_reset_done.html。
否则,您可以将 PasswordResetDoneView 子类化:
意见
class CustomPasswordResetDoneView(PasswordResetDoneView):
template_name = 'authsystem/password_reset_sent.html'
网址
path('password_reset/done', CustomPasswordResetDoneView.as_view(), name='password_reset_done'),
推荐阅读
- json - 将 Json 发布到 Laravel
- python - How to print the "actual" learning rate in Adadelta in pytorch
- r - How Can I Get minute() to Return 00 instead of 0?
- php - MySQLi 查询不起作用 | 空白 PHP 页面
- sql-server - How to programmatically generate ID for table using stored procedure and insert?
- c - 如何使用可以远程连接的控制台创建 linux C 应用程序
- c++ - ns3 sendtuff 导致内存增加
- google-api - Google drive V3 api 文件:观看
- java - 为什么我的列表包含大于 while 循环的数字?
- excel - 使用可变 Excel 范围在自动筛选 VBA 中使用