1.1、什么是Django自带的用户系统?
Django内置了强大的用户认证系统–auth
1.2、使用该系统有什么优势?
①、快速的进行用户注册、用户登录、用户认证、修改密码等功能。
②、缩减代码,提高效率。
1.3如何来使用自带的用户系统,(写出重要方法或配置)
第一步:系统配置用户表
在 models.py 创建用户表,导包
from django.contrib.auth.models import AbstractUser
创建用户表(用户名/密码 字段 AbstractUser自带, 根据需求添加字段)
class User(AbstractUser):
phone = models.CharField('手机号', max_length=20, null=True) # 手机号
img = models.ImageField(upload_to='user', null=True) # 短信验证码
nick_name = models.CharField('昵称', max_length=20, null=True) # 用户名称
address = models.CharField('地址', max_length=255, null=True) # 地址
email = models.CharField('邮箱', max_length=255, null=True) # 邮箱
class Meta:
db_table = 'tb_user'
在settings中指定系统验证使用的表(models)
AUTH_USER_MODEL = "表所在的文件夹名.表名"
配置完成后,便可以迁移数据库了
第二步:用户注册和登录验证功能
用户注册
## ---------------------- views.py --------------------------- ##
from rest_framework.response import Response
from rest_framework.views import APIView
from userapp.sers import *
from django_redis import get_redis_connection
class RegisterView(APIView):
def post(self, request):
username = request.data.get("username")
password = request.data.get("password")
phone = request.data.get("phone")
code = request.data.get("code")
# 验证参数
if not