DjangoModelPermissions和DjangoObjectPermissions有什么区别

时间:2019-04-15 05:13:43

标签: python django django-rest-framework

DjangoModelPermissionsDjangoObjectPermissions有什么区别?

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

  

DjangoModelPermissions :     该权限类与Django的标准django.contrib.auth模型权限相关。


  

DjangoObjectPermissions    该权限类与Django的标准对象权限框架相关联,该框架允许对模型进行按对象的权限

对于以后,似乎与Django’s permission framework foundation which has no implementation.有关,显然django-guardian填补了这一空白。

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

我正在努力把这个权限系统包扎起来。有什么区别,我应该怎么知道?

1 个答案:

答案 0 :(得分:5)

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