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 相关文章推荐
浅谈Django REST Framework限速
Dec 12 Python
Python字典遍历操作实例小结
Mar 05 Python
新手入门Python编程的8个实用建议
Jul 12 Python
django的分页器Paginator 从django中导入类
Jul 25 Python
学习和使用python的13个理由
Jul 30 Python
Django之使用celery和NGINX生成静态页面实现性能优化
Oct 08 Python
python 生成器和迭代器的原理解析
Oct 12 Python
Python底层封装实现方法详解
Jan 22 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
python实现的分层随机抽样案例
Feb 25 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
Mar 03 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 include的妙用,实现路径加密
2008/07/29 PHP
PHP 输出URL的快捷方式示例代码
2013/09/22 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
PHP编程实现阳历转换为阴历的方法实例
2017/08/08 PHP
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
2020/03/18 PHP
JavaScript 常用函数库详解
2009/10/21 Javascript
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
一起来写段JS drag拖动代码
2010/12/09 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
jQuery的each终止或跳过示例代码
2013/12/12 Javascript
js Calender控件使用详解
2015/01/05 Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
2015/12/26 Javascript
基于Bootstrap实现下拉菜单项和表单导航条(两个菜单项,一个下拉菜单和登录表单导航条)
2016/07/22 Javascript
Angularjs处理页面闪烁的解决方法
2017/03/09 Javascript
AngularJS中的作用域实例分析
2018/05/16 Javascript
vue 1.0 结合animate.css定义动画效果
2018/07/11 Javascript
Vue.js图片预览插件使用详解
2018/08/27 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
vue计算属性无法监听到数组内部变化的解决方案
2019/11/06 Javascript
JavaScript常用工具函数汇总(浏览器环境)
2020/09/17 Javascript
用Python实现服务器中只重载被修改的进程的方法
2015/04/30 Python
Python处理JSON数据并生成条形图
2016/08/05 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
2017/06/05 Python
Python实现统计代码行的方法分析
2017/07/12 Python
python数据结构链表之单向链表(实例讲解)
2017/07/25 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
python的常见矩阵运算(小结)
2019/08/07 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
Python实现队列的方法示例小结【数组,链表】
2020/02/22 Python
纯css3实现的竖形无限级导航
2014/12/10 HTML / CSS
施华洛世奇美国官网:SWAROVSKI美国
2018/02/08 全球购物
2016十一国庆节感言
2015/12/09 职场文书
go:垃圾回收GC触发条件详解
2021/04/24 Golang
深入理解go缓存库freecache的使用
2022/02/15 Golang