zoukankan      html  css  js  c++  java
  • Python-Django权限相关操作

    from django.contrib.auth.models import User
    
    #user对象使用.create创建的用户密码未进行加密,使用create_user创建的用户密码已加密
    user = User.objects.create_user(username='admin1',password='123') 
    user.save()
    #用来判断用户是否存在
    user = User.objects.get(username='admin1').is_authenticated 
    #用来创建一个用户组
    group = Group.objects.create(name="group1")
    group.save()
    #delete方法用来删除用户组
    group = Group.objects.get(name="role1").delete()
    #将用户给1加入到用户组group1中,为一对多的关系数据保存在auth_user_groups中
    user = User.objects.get(username='admin1')
    group = Group.objects.get(name='group1')
    user.groups.add(group)
    #将用户从用户组group中移除
    user.groups.remove(group)
    #用户退出所有的用户组
    user.groups.clear()
    #清空用户组
    group.user_set.clear()
    #检查用户是否具有操作的权限,有返回true没有返回false
    user.has_perm('add_classfile')
    #装饰器用来检查用户是否具有add_classifle权限,如有有责操作没有抛出异常
    from django.contrib.auth.decorators import permission_required
    @permission_required('add_classfile')
    def fun1():
    pass
    向用户添加权限
    '''
    #添加权限
    user.user_permissions.add(permission)
    #删除权限: 
    user.user_permissions.delete(permission)
    #清空权限: 
    user.user_permissions.clear()
    
    '''
    向用户组添加权限
    '''
    #添加权限: 
    group.permissions.add(permission)
    #删除权限: 
    group.permissions.delete(permission)
    #清空权限: 
    group.permissions.clear()
    '''
  • 相关阅读:
    Java compiler level does not match the version of the installed Java Project facet.
    Project configuration is not up-to-date with pom.xml. Select: Maven->Update Project... from the project context menu or use Quick Fix.
    JavaScript
    JavaScript
    Eclipse
    Eclipse
    Oracle
    Java
    Ext JS 4.2
    Eclipse
  • 原文地址:https://www.cnblogs.com/oldpai/p/9665668.html
Copyright © 2011-2022 走看看