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实现百度关键词排名查询
Mar 30 Python
Python中关键字is与==的区别简述
Jul 31 Python
Java中重定向输出流实现用文件记录程序日志
Jun 12 Python
Python编程实现的图片识别功能示例
Aug 03 Python
通过Python 接口使用OpenCV的方法
Apr 02 Python
Python爬虫——爬取豆瓣电影Top250代码实例
Apr 17 Python
使用Python给头像戴上圣诞帽的图像操作过程解析
Sep 20 Python
Python数据可视化:饼状图的实例讲解
Dec 07 Python
Pyorch之numpy与torch之间相互转换方式
Dec 31 Python
Django实现将一个字典传到前端显示出来
Apr 03 Python
python中常见错误及解决方法
Jun 21 Python
Scrapy模拟登录赶集网的实现代码
Jul 07 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
解析PHP无限级分类方法及代码
2013/06/21 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
2013/09/26 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
PHP递归实现文件夹的复制、删除、查看大小操作示例
2017/08/11 PHP
JavaScript 学习技巧
2010/02/17 Javascript
jquery的$getjson调用并获取远程的JSON字符串问题
2012/12/10 Javascript
js中top/parent/frame概述及案例应用
2013/02/06 Javascript
javascript中的onkeyup和onkeydown区别介绍
2013/04/28 Javascript
js的onload事件及初始化按钮事件示例代码
2013/09/25 Javascript
使用jquery prev()方法找到同级的前一个元素
2014/07/11 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
2015/07/29 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
nuxt中使用路由守卫的方法步骤
2019/01/27 Javascript
微信小程序模板消息推送的两种实现方式
2019/08/27 Javascript
利用原生JS实现欢乐水果机小游戏
2020/04/23 Javascript
HTML元素拖拽功能实现的完整实例
2020/12/04 Javascript
vue 使用rules对表单字段进行校验的步骤
2020/12/25 Vue.js
Python中的tuple元组详细介绍
2015/02/02 Python
在Python中调用ggplot的三种方法
2015/04/08 Python
Python3实现Web网页图片下载
2016/01/28 Python
Python 用Redis简单实现分布式爬虫的方法
2017/11/23 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
Django框架 querySet功能解析
2019/09/04 Python
Python如何读取、写入JSON数据
2020/07/28 Python
基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算
2020/08/05 Python
CSS3 Pie工具推荐--让IE6-8支持一些优秀的CSS3特性
2014/09/02 HTML / CSS
html5教你做炫酷的碎片式图片切换 (canvas)
2017/07/28 HTML / CSS
大专生工程监理求职信
2013/10/04 职场文书
2014年班主任工作总结
2014/11/08 职场文书
大学开学典礼新闻稿
2015/07/17 职场文书
pandas DataFrame.shift()函数的具体使用
2021/05/24 Python
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python