Django Auth用户认证组件实现代码


Posted in Python onOctober 13, 2020

用户认证组件:

功能:用session记录登录验证状态

前提:用户表:django自带的auth-user

python3 manage.py createsuperuser #创建超级用户

补充匿名用户:

API:
  from django.contrib import auth :
    1. #if 验证成功返回user对象,否则返回None
    user = auth.authenticate(username=user,password=pwd)
    2. auth.login(request,user) #request.user 当前登录对象
    3. auth.login(request)
    from django.contrib.auth.models import User #User == auth_user
    4. request.user.is_authenticated
    5.user = User.objects.create_user(username='',password='',email='')

  补充:
    匿名用户对象:
      匿名用户
      class models.AnonymousUser

      django.contrib.auth.models.AnonymousUser #这个类实现了django.contrib.auth.models.User
      借口,但是又几点不同:
      id永远是None
      username永远为空字符串
      get_username()永远返回空字符串
      is_staff和is_superuser永远是False
      is_active永远是False
      groups和user_permissions永远为空
      is_annonymous()返回True 而不是False
      is_authenticated()返回时False,而不是True
      set_password()、check_password()、save()和delete()引发NotImplementedError。
      New in Django 1.8:
      新增 AnonymouseUser.get_username()以更好的模拟django.contrib.auth.moudels.User总结:if not :auth.login(request,user)
request.user = AnonymousUser()
else:request.user==登录对象
request.user是一个全局变量

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python采集腾讯新闻实例
Jul 10 Python
python写的一个squid访问日志分析的小程序
Sep 17 Python
python获取当前日期和时间的方法
Apr 30 Python
python实现中文输出的两种方法
May 09 Python
django1.8使用表单上传文件的实现方法
Nov 04 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
Feb 22 Python
Python实现深度遍历和广度遍历的方法
Jan 22 Python
梅尔频率倒谱系数(mfcc)及Python实现
Jun 18 Python
Python+OpenCV+pyQt5录制双目摄像头视频的实例
Jun 28 Python
Python input函数使用实例解析
Nov 22 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
Dec 04 Python
python的json中方法及jsonpath模块用法分析
Dec 06 Python
通过代码实例了解Python3编程技巧
Oct 13 #Python
Python SQLAlchemy库的使用方法
Oct 13 #Python
Pycharm github配置实现过程图解
Oct 13 #Python
详解numpy.ndarray.reshape()函数的参数问题
Oct 13 #Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 #Python
python关于倒排列的知识点总结
Oct 13 #Python
Python如何使用ElementTree解析xml
Oct 12 #Python
You might like
UCenter Home二次开发指南
2009/05/28 PHP
PHP 输出URL的快捷方式示例代码
2013/09/22 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
php实现与erlang的二进制通讯实例解析
2014/07/23 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
iOS+PHP注册登录系统 PHP部分(上)
2016/12/26 PHP
PHP新特性之字节码缓存和内置服务器
2017/08/11 PHP
JavaScript 判断判断某个对象是Object还是一个Array
2010/01/28 Javascript
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
基于jquery的鼠标拖动效果代码
2012/05/30 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
2015/08/01 Javascript
js实现表单Radio切换效果的方法
2015/08/17 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
2016/10/10 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
ThinkPHP+jquery实现“加载更多”功能代码
2017/03/11 Javascript
原生JS实现九宫格抽奖效果
2017/04/01 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
xmlplus组件设计系列之图标(ICON)(1)
2017/05/05 Javascript
网页中的图片查看器viewjs使用方法
2017/07/11 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
深入掌握 react的 setState的工作机制
2017/09/27 Javascript
微信小程序实现随机验证码功能
2018/12/20 Javascript
vuejs移动端实现div拖拽移动
2019/07/25 Javascript
javascript 易错知识点实例小结
2020/04/25 Javascript
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
Python程序设计入门(2)变量类型简介
2014/06/16 Python
python实现数组插入新元素的方法
2015/05/22 Python
Python实现读取txt文件并转换为excel的方法示例
2018/05/17 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
python3实现钉钉消息推送的方法示例
2019/03/14 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
使用postMessage让 iframe自适应高度的方法示例
2019/10/08 HTML / CSS
西班牙品牌鞋子、服装和配饰在线商店:Esdemarca
2021/02/17 全球购物
什么是SQL Server的确定性函数和不确定性函数
2016/08/04 面试题
求职信名称怎么写
2014/05/26 职场文书
学校领导班子群众路线整改措施
2014/09/16 职场文书