django 权限管理菜单(django用户权限管理)

一. django用户、权限存储在django.contrib.auth.models 导入命令:,今天小编就来聊一聊关于django 权限管理菜单?接下来我们就一起去研究一下吧!

django 权限管理菜单(django用户权限管理)

django 权限管理菜单

一. django用户、权限存储在django.contrib.auth.models 导入命令:

from django.contrib.auth.models import Users, Permission

二.在模型中创建权限,即在模型元类中定义属性permissions

class model1(models.Model): ...... class Meta: permissions = ( ('can_read_model1', '可以阅读模型1'), )

三. 在视图中操作Permission创建权限

#导入权限模型 from django.contrib.auth.models import Permission #导入权限对应的内容类型模型 from django.contrib.contenttypes.models import ContentType #导入需要创建权限的模型 from ddgj.models import DD #导入视图函数响应函数 from django.http import HttpResponse #定义视图函数 def view1(request): #在ContentType模型中查找DD模型的ID dd_content_type = ContentType.objects.get_for_model(DD) #在Permission中为DD模型创建权限 Permission.objects.create( codename='can_see_order', name='可以查看个人订单', content_type=dd ) return HttpResponse("订单模型'可查看个人订单创建成功")

四. 权限创建成功后,即可在后台管理admin中的用户模型中为用户添加权限了。

五. 获取用户的所有权限

request.user.get_all_permissions()

六. 判断用户是否拥有某种权限

request.user.has_perm('ddgj.add_dd) #当前登录用户是否有ddgj应用中"add_dd"权限

七. 利用装饰器快捷对用户进行权限检验

# 导入权限检验装饰器函数 from django.contrib.auth.decorators import permission_required #应用装饰器 @permission_required('ddgj.can_see_orde', login_url='/') def view1(models.Model): pass

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页