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的Django框架下搭建的BLOG添加RSS功能的教程
Apr 08 Python
Python简单检测文本类型的2种方法【基于文件头及cchardet库】
Sep 18 Python
python 将数据保存为excel的xls格式(实例讲解)
May 03 Python
Python中创建二维数组
Oct 17 Python
对Python中for复合语句的使用示例讲解
Nov 01 Python
安装好Pycharm后如何配置Python解释器简易教程
Jun 28 Python
Python 3 判断2个字典相同
Aug 06 Python
python 利用turtle模块画出没有角的方格
Nov 23 Python
Python测试线程应用程序过程解析
Dec 31 Python
Python可变集合和不可变集合的构造方法大全
Dec 06 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 Python
Python日志模块logging用法
Jun 05 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
PHP 加密与解密的斗争
2009/04/17 PHP
PHP session有效期问题
2009/04/26 PHP
php截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
PHP实现图片自动清理的方法
2015/07/08 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
2015/12/15 PHP
实例讲解PHP表单验证功能
2019/02/15 PHP
JavaScript 实现??打印?理
2007/04/28 Javascript
extJs 下拉框联动实现代码
2010/04/09 Javascript
jquery nth-child()选择器的简单应用
2010/07/10 Javascript
jQuery下实现等待指定元素加载完毕(可改成纯js版)
2013/07/11 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
Node.js中HTTP模块与事件模块详解
2014/11/14 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
2016/04/11 Javascript
jquery插件格式实例分析
2016/06/16 Javascript
利用jquery获取select下拉框的值
2016/11/23 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
2016/12/02 Javascript
js+div+css下拉导航菜单完整代码分享
2016/12/28 Javascript
微信小程序 引入es6 promise
2017/04/12 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
让python json encode datetime类型
2010/12/28 Python
python中urllib模块用法实例详解
2014/11/19 Python
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
英国Amara家居法国网站:家居装饰,现代装饰和豪华礼品
2016/12/15 全球购物
欧洲第一的摇滚和金属乐队服装网站:EMP
2017/10/26 全球购物
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
一百多行代码实现react拖拽hooks
2021/03/23 Javascript
大型活动策划方案
2014/01/12 职场文书
高中运动会入场词
2014/02/14 职场文书
服务质量承诺书
2014/03/27 职场文书
高三上学期学习自我评价
2014/04/23 职场文书
毕业横幅标语
2014/10/08 职场文书
学校隐患排查制度
2015/08/05 职场文书
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python