我有一个API POST
/api/samples/sample_id/check
的视图集SampleViewSet。我已经为它定义了对象级权限。在
class SamplePermission(BasePermission):
def has_object_permission(self, request, view, obj):
return True
class SampleViewSet(viewsets.ModelViewSet):
permission_classes = (SamplePermission, )
@detail_route(methods=['post'])
def check(self, request, pk=None):
if pk:
print "check"
当我调用API POST
/api/samples/check
时,没有调用具有“u object”权限的函数。原因是什么?在
权限无效,因为方法
check_object_permissions
调用了get_object
函数。所以您应该在check
函数中调用其中一个函数:或者您可以直接在
^{pr2}$detail_route
中添加权限相关问题 更多 >
编程相关推荐