auth
auth
auth组件在django中提供:admin登录、权限的配置等功能。
创建用户
-
命令
python manange.py createsuperuser
-
函数
from django.contrib import admin from django.urls import path from django.shortcuts import HttpResponse def demo(request): from django.contrib.auth import models models.User.objects.create_user("user-1", "xxx@live.com", "xxxxxxx123123") models.User.objects.create_superuser("user-2", "xxx@live.com", "xxxxxxx123123") return HttpResponse("ok") urlpatterns = [ path('admin/', admin.site.urls), path('demo/', demo), ]
权限表
由于admin中为每个model类都会生成URL(增、删、改、查),所以在django中就以这些生成的URL的name值为权限标识(codename),后续用户访问时,根据请求url的name中来判断用户是否有权方法。
1.权限表内容
权限表内容是django内部自动生成,在我们执行migrate命令时,会自动触发 根据表创建权限的操作。
2.分配权限
在admin中,给用户可以分配权限。
3.权限校验
由于admin为每个表生成的增删改查的方法分别是:changelist_view
、add_view
、delete_view
、change_view
,所以每个权限的判断都定义在了相应的视图函数中。
判断权限:
4.组和权限
本文作者:Sherwin
本文链接:https://www.cnblogs.com/sherwin1995/p/17280200.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步