当前位置: 首页 > news >正文

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

一. Django默认的密码重置

1.路由

# url.py


from django.contrib.auth import views as auth_views

urlpatterns = [


# 密码重置
    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. 重置完成 返回到登录页

相关文章:

  • C语言 第三章 函数(3)
  • 一文讲懂Go语言如何使用配置文件连接数据库
  • DeepSeek使用教程--教师领域方面的提示词库
  • cursor终端中文乱码的解决方案
  • C# 类型转换基本概念
  • TCP三次握手,四次挥手;多进程、多线程实现并发服务器
  • 聊天服务器分布式改造
  • 春节面对大流量并发,系统该如何设计
  • HttpServletRequest 和 HttpServletResponse 区别和作用
  • 力大砖飞,纯暴力搜索——蓝桥p2110(写着玩的)
  • vue3 遇到babel问题(exports is not defined) 解决方案
  • 【水调歌头·排序篇】--体验快排与归并的奥妙
  • Mac服务器上创建Docker并安装宝塔环境
  • 2025最新软件测试面试八股文(含答案+文档)
  • Java 中数据脱敏的实现
  • 前端快速搭建Node服务(解决跨域问题)
  • MySQL进阶-关联查询优化
  • The Wedding Juicer POJ - 2227
  • linux下进程间通信方式(匿名管道)
  • 直装永久授权,最新专业版集成VB7
  • 网站新闻公告表怎么做/百度移动端关键词优化
  • 使用apmserv本地搭建多个网站/百度旧版本下载
  • 网站提取规则怎么设置/yandex搜索引擎
  • 做网站赌博的/自己制作一个网页
  • 网页设计html和css代码/成都网站快速优化排名
  • 网站建设 后台/电脑编程培训学校