zoukankan      html  css  js  c++  java
  • [Django]用户权限学习系列之Permission权限基本操作指令

    若需建立py文件进行测试,则在文件开始加入以下代码即可

    #coding:utf-8 
    
    import os 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "www.settings") 
    
    '''
    Django 版本大于等于1.7的时候,需要加上下面两句
    import django
    django.setup()
    否则会抛出错误 django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
    '''
    import django
    
    from django.contrib.auth.models import Permission, User #用户 权限
    
    if django.VERSION >= (1, 7):#自动判断版本
        django.setup()

    查询一个用户所有权限,并使其结果转为list列表

    User.objects.get(username='').user_permissions.values()
    #方法一
    list(User.objects.get(username='').get_all_permissions())
    #方法二

    查询所有权限,并循环输出

    c = Permission.objects.values()
    for i in c:
        print i

    添加指定权限,此处注意content_type_id是int类型,对应于model的数字

    Permission.objects.create(name='add_logentry',content_type_id=1,codename='Can add log entry')
    #例:利用查询权限语句,查看到{u'content_type_id': 1L, 'codename': u'add_logentry', u'id': 1L, 'name': u'Can add log entry'}]类似这样的列表,

    删除指定权限

    Permission.objects.get(codename='Can add log entry').delete()


    原创文章,转载请说明出处,谢谢!

  • 相关阅读:
    现代操作系统-读者/写者问题
    现代操作系统-进程互斥
    关于网页强制被跳转到wpkg.org的解决
    Leetcode Count Prime
    Leetcode Add Two Numbers
    Leetcode Two Sum
    can't find -lsocket的解决办法
    删除Windows右键不用的选项
    Linux下的另一个词典GoldenDict
    spark执行例子eclipse maven打包jar
  • 原文地址:https://www.cnblogs.com/CQ-LQJ/p/5604331.html
Copyright © 2011-2022 走看看