我有一些在Meta类中定义权限的模型,如下所示(不仅仅是默认视图,添加,编辑,删除):
class FabricInstance(models.Model):
class Meta:
permissions = (
( 'sf_fabricinstance_read', 'View Fabric Instances' ),
( 'sf_fabricinstance_manage', 'Manage Fabric Instances' ),
( 'sf_fabricinstance_delete', 'Delete Fabric Instances' ),
)
我希望其余框架获得这些权限并返回响应,并允许基于用户权限进行操作。
我已经尝试过:
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
'rest_framework.permissions.DjangoModelPermissions',
),
}
但是Rest框架没有使用我在Meta类中定义的权限。
因此,我获得了对REST API的只读访问权限(请注意:直接在我访问REST URL时,我正在谈论。以编程方式工作没有问题)。
我想念什么吗? 我的理解是,应该通过在settings.py
的REST_FRAMEWORK部分中简单添加“ rest_framework.permissions.DjangoModelPermissions”来选择它们。