Django项目用户注册功能(一)

用户注册功能

1.实际上就是数据库创建一条数据

2.Django操作数据库的模型

一.用户模型设计(表的设置)

1.表字段的分析

  • 账号
  • 密码
  • 手机
  • 邮箱
  • 邮箱是否有效

2.用户模型设置

Django的开发效率很高,内置了很多功能,例如:权限验证

建议最好自定义User的模型(可延展性)

一个模型就是一个类

二.功能需求分析

1.接口设计思路

  • 分析业务逻辑,明确需要设计的几个相关业务,将每个子业务当做一个接口分析
  • 分析接口的功能,明确接口的访问方式以及返回数据
    • 接口的请求方式 GET PUT POST DELETE
    • 接口的URL定义
    • 需要接受什么参数(路径,查询参数,表单,json)
    • 返回的数据以及数据格式

2.注册功能分析

  1. 流程
  2. 功能接口
    发送一次请求,就要一个接口
  • 注册页面
  • 图形验证码
  • 用户名校验
  • 手机号码校验
  • 短信验证码
  • 注册保存用户数据

三.注册页面

1.接口设计

1.1说明

条目 说明
请求方法 GET
url定义 /user/register/
参数格式 无参数

1.2返回的数据

注册页面的 html

2.1视图


03user_views.jpg

2.2url


04user_urls.jpg

四.图形验证码功能

1.接口设计

1.1说明

条目 说明
请求方法 GET
url定义 /image_code/
参数格式 查询参数

1.2参数说明

条目 类型 是否必须 描述
rand 字符串 随机浮点数字符串

1.3返回数据

验证码图片

01views.jpg

def image_code_view(request):
    '''
    生成验证码
    url : '/image_code/'
    :param request:
    :return:
    '''
    #1.生成验证码,随机生成字符串,生成图片
    text ,image = captcha.generate_captcha()
    #2.后端保存验证码,为了校验
    #保存在session中
    request.session['image_code']=text
    request.session.set_expiry(constants.IMAGE_CODE_EXPIRS)
    #过期时间
    #3.记录日志
    logger.info('Image code:{}'.format(text))
    #4.返回验证码图片
    return HttpResponse(content=image,content_type='image/jpg')

五.点击刷新

05js.jpg
$(()=>{
    //1.点击刷新验证码
    $('.captcha-graph-img img').click(function () {
        $(this).attr('src','/image_code/?rand=' + Math.random())
    });

注意要在
register.html 里面挖坑填坑

06register.jpg

最后上传码云

 $ git add .
 $ git commit -m 'update projects'
 $ git push origin master

你可能感兴趣的:(Django项目用户注册功能(一))