gpt4 book ai didi

python - Django 中的对象级级联权限

转载 作者:太空狗 更新时间:2023-10-30 01:23:38 27 4
gpt4 key购买 nike

Django-guardian 和 django-permissions 等项目使您能够拥有对象级别的权限。但是,如果两个对象之间是父子关系,那么如果没有特殊说明,子对象有没有办法继承父对象的权限呢?例如,子文件夹 应从父文件夹 继承权限,除非用户明确为子文件夹分配不同的权限。

使用 Django(尤其是 Django-guardian 模块)实现此目的的最佳方法是什么?

最佳答案

当您检查用户是否对某个对象具有权限时,如果没有,则您可以检查它是否对其父对象具有权限。

您甚至可能想制作自己的函数,例如:

def your_has_perm(user, perm, obj):
has = user.has_perm(perm, obj)

if not has and hasattr(obj, 'parent'):
return your_has_perm(user, perm, obj.parent)

return has

这应该遍历父级,直到找到父级的权限或返回 False。

关于python - Django 中的对象级级联权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10975486/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com