欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > 记录一下Django的密码重置(忘记密码)

记录一下Django的密码重置(忘记密码)

2025/3/12 23:11:38 来源:https://blog.csdn.net/nnjy_1993/article/details/146119629  浏览:    关键词:记录一下Django的密码重置(忘记密码)

一. Django默认的密码重置

1.路由

# url.pyfrom django.contrib.auth import views as auth_viewsurlpatterns = [# 密码重置path('password_reset/', auth_views.PasswordResetView.as_view(), name='password_reset'),# 用户输入邮箱后,跳转到此页面path('password_reset/done/', auth_views.PasswordResetDoneView.as_view(), name='password_reset_done'),# 用户点击邮件中的链接,进入重置密码的页面path('reset/<uidb64>/<token>/', auth_views.PasswordResetConfirmView.as_view(), name='password_reset_confirm'),# 密码成功重置后,跳转到此页面path('reset/done/', auth_views.PasswordResetCompleteView.as_view(), name='password_reset_complete'),
]

2.配置

# settings.py# 邮件设置 (在开发环境下使用控制台邮件发送)
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'  # 在开发模式下打印邮件内容# 在生产环境中使用真实的邮件服务(例如Gmail、SendGrid等)
# EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
# EMAIL_HOST = 'smtp.gmail.com'
# EMAIL_PORT = 587
# EMAIL_USE_TLS = True
# EMAIL_HOST_USER = 'your_email@example.com'
# EMAIL_HOST_PASSWORD = 'your_email_password'DEFAULT_FROM_EMAIL = '123456@qq.com'  # 发件人邮箱PASSWORD_RESET_TIMEOUT = 100  # 60 * 60 * 24 * 1  # 24 小时(单位:秒)

3.访问 /password_reset/

4.返回成功页面

5.控制台显示

6.点击链接 进到重置页面

7.修改成功

二. 自定义密码重置

1. 输入注册邮箱

2. 返回重置链接 

3. 重置密码 

4. 重置完成 返回到登录页

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词