服务器之家

服务器之家 > 正文

Django自带的用户验证系统实现

时间:2021-08-16 00:02     来源/作者:ZPeng_Yan

首先,我要说明一下,下面内容不是必须品,如果各位大神喜欢手写也是可以的,你也可以选择自带的功能来缩减你的代码量,提高效率!

第一步 系统配置用户表

首先,在models中创建用户表,导包

?
1
2
3
4
5
6
7
8
9
from django.contrib.auth.models import AbstractUser
 
#创建用户表
class User(AbstractUser):
    username = models.CharField(max_length=200,unique=True)
    password = models.CharField(max_length=200)
 
    class Meta:
        db_table = 'user'

在settings中指定系统验证使用的表(models)

?
1
2
3
AUTH_USER_MODEL = "表所在的应用名.表名"
如:        应用名 表名
AUTH_USER_MODEL = "myapp.User"

配置完成后,便可以迁移数据库了

通过Django自带的AbstractUser,可以自动创建一些用户表所需的字段,如下图:

Django自带的用户验证系统实现

第二步 用户注册和登陆验证功能

?
1
2
3
4
5
6
7
8
9
10
11
12
13
from django.contrib.auth import authenticate
 
class UserView(APIView):
 
    def post(self,request):
        #创建新用户
        User.objects.create_user(username='小明',password='123')
        return Response({'code':200})
 
    def get(self,request):
        #验证用户信息
        result = authenticate(username='小明',password='123')
        return Response({'code':200})

可以通过create_user给你的用户表添加新用户,通过authenticate验证用户是否存在,如果存在 result的值为username,否则为None

上面的Demo仅仅做为演示,具体功能可以根据自己的需求添加

到此这篇关于Django自带的用户验证系统实现的文章就介绍到这了,更多相关Django 用户验证内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/ZPeng_Yan/article/details/106497058

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部