Django(三):Django框架提供的模块---auth

auth模块的作用

auth 模块能够快速的实现用户模块的基本功能。用户认证、用户组和权限管理等。
建项目后,Django 就把 auth 模块的所有功能提供给了开发者使用,开发者可以调用相应的接口,实现不同的功能需求。

auth模块相关表

表名作用
userUser是auth模块中维护用户信息的表,在数据库中该表被命名为auth_user,该表继承自Abstractuser
group定义用户组模型,该表只包含一个name字段和一个permissions(权限)多对多关系字段,在数据库中被命名为auth_group
Permission权限表,提供表级别的权限控制,可以检查用户是否对某个表拥有增(add),改(change),删(delete)权限

auth_user 表的字段以及字段类型,如下所示。
在这里插入图片描述

新建一张auth_user 用户表,并为此表添加一个新用户 user

#from django.contrib import auth  
# 使用auth模块
from django.contrib.auth.models import User
#auth认证系统默认使用User表
user=User.objects.create_user(username='太难了',password='123456',email='888888@qq.com')
save()
#调用该方法保存数据 

修改用户表中的某个属性

user.set_password(password='12345abc')
#对原密码进行修改

用户认证功能

auth 模块提供了认证用户功能—验证用户名以及密码是否正确。如果认证成功(用户名和密码正确有效),便会返回一个 User 对象。authenticate()会在该 User 对象上设置一个属性(id)来标识后端已经认证了该用户,且该信息在后续的登录过程中是需要的。可以用下面方式引入后使用:

from django.contrib.auth import authenticate
user = authenticate(username='我不会',password='12345abc')

其他功能

用户的登录(login)、退出(logout)功能,封装在 django.contrib.auth 里;
用户权限系统封装在 django.contrib.auth.models.Permission 中 ,可以对用户的权限进行增加、修改、删除;
用户组可以通过 from django.contrib.auth.models.Group 导入后来创建组或者删除组。、
举例:

user.user_permission.add(permission)#给某个用户权限的添加权限
group = Group.objects.create(name=group_name)#添加新的用户组
group.save() #保存新建好的用户组
group.delete()#删除用户组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值