6-7-8 django在线教育平台----用户注册

一、搭建简单逻辑框架

1、新建模板文件

将register.html文件拷贝到template文件下,配置css、js、images等文件路径

这里写图片描述

/static/css/reset.css 和 {% static ‘css/reset.css’ %}
这两种写法都和settings中配置的STATIC_URL = ‘/static/’相关,当STATIC_URL = ‘/my_static/’时,第一种写法需要改为 /my_static/css/reset.css,而第二种不需要修改

2、配置url

这里的RegisterView是根据第三步中的views的编写而来的,第二步和第三步是同时进行的

这里写图片描述

配置跳转到register.html页面的url,全局搜索注册按钮,配置url,这是根据name=register来的,

这里写图片描述

3、编写view

这里的原理和登陆类似

这里写图片描述

4、简单测试
启动项目,进入主页,没有退出先去后台注销退出,退出后

点击注册按钮
这里写图片描述

跳转到注册页面

这里写图片描述

二、验证码功能的配置和使用

Gitub上搜索django captcha,点击进去查看如何安装、如何使用,运用captcha这个包写验证码功能
http://django-simple-captcha.readthedocs.io/en/latest/usage.html

这里写图片描述

1、captcha的安装配置

这里写图片描述

第一步安装

这里写图片描述

第二步添加应用captcha

这里写图片描述

第三步执行migrations、migrate

这里写图片描述

第四步添加url

这里写图片描述

查看数据库,多了一张表,说明captcha的基本配置已经完成

这里写图片描述

2、captcha的使用

这里写图片描述

在forms.py中验证前端数据

这里写图片描述

编写forms,根据注册页面,需要验证邮箱、密码、验证码,注意RegisterForm中的邮箱、密码、验证码和模板中的name要一致

这里写图片描述

在views中·实例化RegisterView,将captcha自带的验证码数据传给前端模板

这里写图片描述

这里写图片描述

刷新注册页面,右击页面,查看网页源码,这里多生成了一段代码,下图中有两个input框,第一个是自动生成的hidden input,第二个是用户添验证码的input框

这里hidden input中的value与数据库中的hashkey是一样的,每个图片有一个value,但在前端页面显示的是图片,将图片的value与你输入的值作比对

这里写图片描述

这里写图片描述

3、完善view、测试

编写views中的post方法,和登录功能类似,实例化RegisterForm类,根据RegisterForm类用is_valid验证数据的有效性,通过验证后将用户注册的信息保存到数据库

这里写图片描述

配置模板,主要是method、action、csfr验证

这里写图片描述

测试

输入正确的用户名和密码,输入错误的验证码

这里写图片描述

打断点,调试
这里写图片描述

错误信息呈中文显示

这里写图片描述

这里写图片描述

猜你喜欢

转载自blog.csdn.net/f1ngf1ngy1ng/article/details/80948574