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


Posted in Python onDecember 18, 2020

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

第一步 系统配置用户表

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

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)

AUTH_USER_MODEL = "表所在的应用名.表名"
如:        应用名 表名
AUTH_USER_MODEL = "myapp.User"

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

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

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

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

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 用户验证内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python解析树及树的遍历
Feb 03 Python
Python爬虫实现百度图片自动下载
Feb 04 Python
解决python3捕获cx_oracle抛出的异常错误问题
Oct 18 Python
python使用正则表达式来获取文件名的前缀方法
Oct 21 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 Python
Python Gluon参数和模块命名操作教程
Dec 18 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
Feb 18 Python
jupyter notebook 实现matplotlib图动态刷新
Apr 22 Python
Python如何给你的程序做性能测试
Jul 29 Python
基于python图书馆管理系统设计实例详解
Aug 05 Python
详解Python调用系统命令的六种方法
Jan 28 Python
python playwrigh框架入门安装使用
Jul 23 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
Dec 18 #Python
python 爬虫爬取京东ps4售卖情况
Dec 18 #Python
python实现视频压缩功能
Dec 18 #Python
MoviePy常用剪辑类及Python视频剪辑自动化
Dec 18 #Python
python 实现全球IP归属地查询工具
Dec 18 #Python
MoviePy简介及Python视频剪辑自动化
Dec 18 #Python
Python非单向递归函数如何返回全部结果
Dec 18 #Python
You might like
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
php设计模式 Bridge (桥接模式)
2011/06/26 PHP
php实现数组纵向转横向并过滤重复值的方法分析
2017/05/29 PHP
Jquery 表单取值赋值的一些基本操作
2009/10/11 Javascript
javascript轻量级模板引擎juicer使用指南
2014/06/22 Javascript
js实现键盘操作实现div的移动或改变的原理及代码
2014/06/23 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
jquery实现多次上传同一张图片
2017/01/09 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
JavaScript之iterable_动力节点Java学院整理
2017/06/29 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
2017/09/11 Javascript
vue2.0实现前端星星评分功能组件实例代码
2018/02/12 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
js实现内置计时器
2019/12/16 Javascript
Python+django实现文件上传
2016/01/17 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
2020/01/10 Python
安装python依赖包psycopg2来调用postgresql的操作
2021/01/01 Python
关于HTML5+ API plusready的兼容问题
2020/11/20 HTML / CSS
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
英国羊皮鞋类领先品牌:Just Sheepskin
2019/12/12 全球购物
Linux上比较文件的命令都有哪些
2012/02/24 面试题
家佳咖啡店创业计划书
2013/12/27 职场文书
法律进机关实施方案
2014/03/12 职场文书
个人承诺书
2014/03/26 职场文书
公证委托书模板
2014/04/03 职场文书
公司联欢会策划方案
2014/05/19 职场文书
会计电算化专业求职信
2014/06/10 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
2016年小学教师政治学习心得体会
2016/01/23 职场文书
医生行业员工的辞职信
2019/06/24 职场文书
浅谈mysql返回Boolean类型的几种情况
2021/06/04 MySQL