Django用户认证组件 (auth模块)
1、导入 auth 模块
# 认证模块
from django.contrib import auth # 对应数据库用户表,可以继承扩展
from django.contrib.auth.models import User
2、创建用户对象
create():创建一个普通用户,密码是明文的。
create_user():创建一个普通用户,密码是密文的。
create_superuser():创建一个超级用户,密码是密文的,要多传一个邮箱 email 参数。
3、用户认证
auth.authenticate(username,password)
# 将输入的密码转为密文去认证,认证成功返回用户对象,失败则返回None
4、登录和退出
from django.contrib import auth auth.login() # 该函数接受一个HttpRequest对象,以及一个认证了的User对象。此函数使用django的session框架给某个已认证的用户附加上session id等信息。 auth.logout() # 该函数接受一个HttpRequest对象,无返回值。当调用该函数时,当前请求的session信息会全部清除。该用户即使没有登录,使用该函数也不会报错。
5、request.user
Django有一个默认中间件,叫做AuthenticationMiddleware,每次请求进来都会去session中取一个userid,取不到的话,赋值request.user = AnonymousUser() , 一个匿名用户对象。
当用户组件auth.login一旦执行,将userid到session中后,再有请求进入Django,将注册的userid对应的user对象赋值给request.user,即再后面的任何视图函数中都可以从request.user中取到该客户端的登录对象。
Django用户认证组件 (auth模块)的更多相关文章
- Django之路——11 Django用户认证组件 auth
用户认证 auth模块 1 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.1 .authenti ...
- django——用户认证组件
用户认证 auth模块 1 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.1 .authenti ...
- Django的认证系统—auth模块
Django的认证系统 auth模块的知识点总结: 1. 创建超级用户 python manage.py createsuperuser from django.contrib import auth ...
- web框架开发-Django用户认证组件
可以用认证组件做什么 针对session的缺陷, 跟新数据时,不跟新key键, 用户认证组件是删除后再重建 用户认证组件很多功能可以直接使用 利用用户认证表(auth_user,通过Django自己创 ...
- Django用户认证组件
用户认证 主要分两部分: 1.auth模块 from django.contrib import auth 2.User对象 from django.contrib.auth.models imp ...
- 10.Django用户认证组件
用户认证组件: 功能:用session记录登录验证状态: 前提:用户表,django自带的auth_user 创建超级用户:python manage.py createsuperuser ...
- Django的认证系统 auth模块
Django自带的用户认证 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这还真是个麻烦的事情呢. Djang ...
- Django 学习之用户认证组件auth与User对象
一.auth模块 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个. 1 .authenticate() ...
- python 全栈开发,Day79(Django的用户认证组件,分页器)
一.Django的用户认证组件 用户认证 auth模块 在进行用户登陆验证的时候,如果是自己写代码,就必须要先查询数据库,看用户输入的用户名是否存在于数据库中: 如果用户存在于数据库中,然后再验证用户 ...
- 14 Django的用户认证组件
用户认证 auth模块 from django.contrib import auth django.contrib.auth中提供了许多方法,这里主要介绍其中的三个: 1.1 .authentica ...
随机推荐
- openGauss数据库源码学习-指标采集、预测与异常检测
opengauss 源码解析 指标采集.预测与异常检测 代码位置:/gausskernel/dbmind/tools/anomaly_detection 各模组在整体结构上的组合在摩天轮论坛上官方解析 ...
- HarmonyOS开发案例分享:万能卡片也能用来玩游戏
一.前言 作为一名开发爱好者,从大了讲,我学习并进行HarmonyOS相关开发是为了能为鸿蒙生态建设尽一份绵薄之力,从小了讲,就是为了自己的兴趣.而万能卡片是一个让我非常感兴趣的东西. 很多时候我跟别 ...
- Hi3861编译烧录更快捷
原文链接:https://mp.weixin.qq.com/s/TApbA6VUYUVWrGGaDyodbA,点击链接查看更多技术内容: HUAWEI DevEco Device Tool是华为面向 ...
- 编程小白也能快速掌握的ArkUI JS组件开发
原文:https://mp.weixin.qq.com/s/ByxCMvtxaNuKI_6cXgtLBg,点击链接查看更多技术内容. Playground自上线以来,得到了广大开发者的一致好评.特别是 ...
- sql 语句系列(月份的第一天和最后一天)[八百章之第二十章]
前言 插播一个,从给定日期值里面提取年月日时分秒. 之所以写这个是因为使用频率太高. mysql: select DATE_FORMAT(CURRENT_TIMESTAMP,'%k') hr, DAT ...
- 重新点亮linux 命令树————grub配置文件[二十]
前言 简单介绍一下grub 配置文件. 正文 grub 是什么呢? 引导配置. grub 配置文件: /etc/default/grub 默认grub配置文件 /etc/grub.d/ /boot/g ...
- 密码学中的RSA算法与椭圆曲线算法
PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全.密码学.联邦学习.同态加密等隐私计算领域的技术和内容. 在数字安全领域,加密算法扮演着至关重要的角色.它们确保了信息的机 ...
- 他来了他来了,.net开源智能家居之苹果HomeKit的c#原生sdk【Homekit.Net】1.0.0发布,快来打造你的私人智能家居吧
背景介绍 hi 大家好,我是三合,作为一个非著名懒人,每天上完班回到家,瘫在沙发上一动都不想动,去开个灯我都嫌累,此时,智能家居拯救了我,只需要在手机点点点,开关灯,空调,窗帘就都搞定了,一开始我用的 ...
- 力扣682(java)-棒球比赛(简单)
题目: 你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 ops ...
- HarmonyOS NEXT应用开发——Navigation开发 页面切换场景范例
简介 在应用开发时,我们常常遇到,需要在应用内多页面跳转场景时中使用Navigation导航组件做统一的页面跳转管理,它提供了一系列属性方法来设置页面的标题栏.工具栏以及菜单栏的各种展示样式.除此之外 ...