新星计划2023·第1期【Django\Web3】打卡第二周任务

创作打卡跟踪
实践:使用django实现传统注册以及登录(邮件)

在成功启动了django的服务后,准备开始做登录页面及其功能。

登录页面的模版:login.html ,要放在Myapp下的templates目录下:

 然后通过urls.py和views.py的设置,使其能成功打开页面。然后就可以开始具体的功能开发了。

功能实现主要分为三部分:1.bom层,2.dom层,3.接口实现

登录功能:

这个login.html页面下写好好了 用户名输入框,密码输入框,和登录按钮。

我使用了一个网上下载的样式,效果如图:

 然后要去写对应的js部分,收集俩个输入框的内容,通过jquery的post请求发给后端,并对返回值进行判断,若为1则可以跳转到主页,若不为1则提示用户登录失败。

后台代码是调用django自带用户库,进行登录:这里的密码是自动加密的。

 

 然后就是下一个功能:注册

注册功能:

前端:需要有用户名,密码,确认密码,邮箱四个输入框。还有一个注册按钮。

 然后同样使用http请求把内容发送给后端,后端拿到后去django自带的用户表中注册,如果注册失败,则说明用户名已存在。那就提示前端注册失败,并且仍然重定向登录页。若注册成功,则直接登录,并进入主页。

功能:邮件找回密码

前端:输入用户名 -> 点击发送右键 -> 输入邮件的验证码 -> 输入新密码。

当用户点击发送邮件后,后端会生成一个随机4位验证码发给用户之前注册时候的邮箱。用户输入正确验证码和新密码后,点击Submit,后台需要验证,验证码没问题就给重置密码。

 其中,验证码因为没有使用缓存数据库redis,就先用用户表的lastname字段凑合存储了。

至此,第二周任务圆满实现。

猜你喜欢

转载自blog.csdn.net/qq_22795513/article/details/130313418