3-用户注册---用户类创建和短信验证码的功能实现

用户注册

一、用户模型类的创建

二、短信发送后端API设计和分析

三、短信发送后端API的实现

四、用户名和手机号的后端API实现

回到顶部

一、用户模型类的创建

  Django提供认证系统可以帮助我们实现,参考https://yiyibooks.cn/xx/Django_1.11.6/topics/auth/index.html

    • 用户的数据模型
    • 用户密码的加密与验证
    • 用户的权限系统

  1.在meiduo/meiduo_mall/apps中创建Django应用users,并在配置文件中注册users应用

    在user目录下的mobile中写入下面代码 

from django.contrib.auth.models import AbstractUser
from django.db import models

# Create your models here.

# AbstractUser是Django的用户抽象模型类,可以直接继承
class User(AbstractUser):
    mobile = models.CharField(max_length=11, verbose_name='手机号')

    class Meta:
        db_table = 'tb_users'
        verbose_name = '用户'
        verbose_name_plural = verbose_name
user/modles

  2.由于手动设置的User模型类与Django中的认证模型类冲突,所以在配置文件dev中设置如下

# AUTH_USER_MODEL = '子应用.模型类'
AUTH_USER_MODEL = 'users.User'

  3.数据库迁移(第3步一定要在第2步后执行)

python manage.py makemigrations
python manage.py migrate  

二、短信发送后端API设计和分析

  1.设计接口思路 

业务功能:分析子业务(子功能),每个子业务设计一个API接口。

API设计过程:

  •  接口的请求方式和url地址
  •  前端访问接口所需传递的参数和格式
  •  接口的响应数据和格式

  2.注册子业务的设计 

获取短信验证码

用户名是否存在

手机号是否存在

注册信息的保存

三、短信发送后端API的实现

1.获取短信验证码

  

2.本地域名设置

  作用:不用进行DNS解析,直接就可以根据域名访问对应服务器

  普通的域名访问:

    域名--->DNS解析--->获取IP地址--->访问ip对应的服务器

  本地的域名访问:

    域名--->到本地的/etc/hosts找域名和IP的关系--->找到直接访问ip对应的服务器--->没找到,在进行DNS解析

  设置方法:

    

静态文件服务器:127.0.0.1:8080 -> www.meiduo.site:8080

后端API服务器:127.0.0.1:8000 -> api.meiduo.site:8000

  3.跨域请求和celery异步队列

    跨域请求

    异步队列

四、用户名和手机号的后端API实现

  1.用户名功能实现

  2.手机号功能实现

原文地址:https://www.cnblogs.com/Mryang123/p/10370865.html