在web项目中根据不同的用户肯定会限制其不同的权限,利用以下模块可以满足日常几乎所有的权限控制

permission_hook.py  # 自定义权限控制,必须返回True/false  ,True表示允许,false 拒绝

permission_list.py     #根据url,访问方法及参数控制用户权限

permissions.py          #先判断用户是否拥有permission_list.py中的权限,如果验证通过最后验证用户自定义权限。

实例:

permission_hook.p:

def check_self_user(request):
    '''
    用户只能筛选自己的客户

    '''
    if request.GET.get('consultant') == str(request.user.id):
        return True
    if request.GET.get('consultant'):
        print('禁止查看非自己的客户')
        return False

    return True
View Code

相关文章: