DjangoModelPermissions和DjangoObjectPermissions有什么区别

Kri*_*son 2 python django django-rest-framework

DjangoModelPermissionsDjangoObjectPermissions有什么区别?

我仍在学习Django和DRF,根据文档,它们似乎做的完全一样。

DjangoModelPermissions: 此权限类绑定到Django的标准django.contrib.auth模型权限。


DjangoObjectPermissions 此权限类绑定到Django的标准对象权限框架,该框架允许对模型进行按对象的权限

对于以后的版本,似乎它与没有实现的Django许可框架基础有关。显然,django-guardian填补了这一空白。

在Django管理员中,我可以将模型的CRUD权限分配给用户和组,因此以后添加了什么?

我正在尝试绕过这个许可系统。有什么区别,我应该怎么知道?

Ken*_*ars 5

DjangoModelPermissions与与数据库表进行交互的权限有关,DjangoObjectPermissions这些权限在代码中表示为模型,而与与表中的各个行(作为代码中的模型实例)进行交互的权限有关。基本上,对象权限是细化权限,它授予对表中某些行的访问权限,但可以限制对同一表中其他行的访问权限