首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >password_reset_confirm.html和password_reser_complete.html在django中未呈现的问题

password_reset_confirm.html和password_reser_complete.html在django中未呈现的问题
EN

Stack Overflow用户
提问于 2022-05-17 03:52:01
回答 1查看 92关注 0票数 0

我已经在Django中实现了密码重置功能,它正常工作,但是当我从Gmail浏览器打开帐户恢复链接时,将我重定向到Django的内置password_reset_confirm页面,我希望它将我重定向到我的自定义password_reset_confirm.html urls.py代码。

代码语言:javascript
复制
app_name="accounts"
urlpatterns=[
path('password_reset/',auth_views.PasswordResetView.as_view( template_name='password_reset.html', success_url=reverse_lazy('accounts:password_reset_done')),name='password_reset'),
path('password_reset_done/', auth_views.PasswordResetDoneView.as_view(template_name='password_reset_done.html'), name='password_reset_done'),
path('password_reset_confirm/<uidb64>/<token>/',auth_views.PasswordResetConfirmView.as_view(template_name='password_reset_confirm.html',success_url=reverse_lazy('accounts:password_reset_complete')),name='password_reset_confirm.html'),
path('password_reset_complete/', auth_views.PasswordResetCompleteView.as_view(template_name='password_reset_complete.html'), name='password_reset_complete'),
]

我还想检查用户输入的电子邮件id是否存在。如果用户输入的电子邮件id不存在,则应该在password_reset.html页面上弹出一条消息“此电子邮件id不存在”。

EN

回答 1

Stack Overflow用户

发布于 2022-05-18 06:44:40

我注意到你的一些urls是错的。如您所知,django有一个内置的系统来恢复密码。所以你需要尊重道路。

代码语言:javascript
复制
from django.urls import path, include
from django.contrib.auth import views as auth_views

    path('password-reset/',
         auth_views.PasswordResetView.as_view(
             template_name='accounts/password_reset.html'
         ),
         name='accounts-recover'),
    path('password-reset/done/',
         auth_views.PasswordResetDoneView.as_view(
             template_name='accounts/password_reset_done.html'
         ),
         name='password_reset_done'),
    path('password-reset-confirm/<uidb64>/<token>/',
         auth_views.PasswordResetConfirmView.as_view(
             template_name='accounts/password_reset_confirm.html'
         ),
         name='password_reset_confirm'),
    path('password-reset-complete/',
         auth_views.PasswordResetCompleteView.as_view(
             template_name='accounts/password_reset_complete.html'
         ),
         name='password_reset_complete'),

请确保您在accounts/templates/accounts下拥有所有自定义模板,以便django能够找到要呈现的html

关于你的第二个请求:

检查用户输入的电子邮件id是否存在。

您需要阅读姜戈博士 --这是可能的,但是您需要创建一些逻辑。此外,我不建议提供任何反馈,除了“邮件发送”在这些页面,这可能是一个安全漏洞和数据泄漏在您的应用程序。

祝好运

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72268016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档