一、
上一篇中,学习了个人注册、登录功能的实现。最近又大概了解了一下Bootstrap,对注册、登录的页面进一步完善。效果如图:
models.py的MyUser继承内置User:
相应的user.html修改完善:
二、言归正传。下面学习如何实现邮件密码找回功能。
在url.py中已经设置了findpassword链接,然后在views.py中编写findpassword视图函数:
视图函数首先通过POST获取到html页面中的username, 在验证该username是否存在,若不存在,则会提示用户名不存在。若用户名存在,则会生成验证码发送给用户的邮箱,用户收到验证码后在html页面中输入验证码和新密码就可以完成密码的修改。
关键是验证码如何发送。用到了user的email_user()函数实现了验证码的发送。
要实现密码发送,需要先进行邮箱的相关设置。以QQ邮箱为例,在账户的设置中,找到POP3/IMAP/SMTP/Exchange/CardAV/CalDAV服务,开启其中的POP3/STMP服务,注意在开启服务时,会有一个客户端授权码,请记住该密码,它时2用于第三方邮件客户端的密码,在setting.py中会用到。
然后在setting.py中添加:
最后编写html页面:
初始页面:
输入用户名发送验证码后:
最后输入邮箱中的验证码和想要设置的新密码即可找回密码。