Kis*_*war 6 django django-permissions django-rest-framework
我查看了关于同一主题的类似问题,我认为我遵循了为has_object_permission.
这就是我在我的设置中所拥有的。
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.IsAuthenticated',
'users.permissions.CanAccessData', # this is my custom class
],
...
}
Run Code Online (Sandbox Code Playgroud)
这是我的权限类
class CanAccessData(permissions.BasePermission):
message = 'You do not have permission to perform this action.'
def has_permission(self, request, view):
print "has_permission`"
return True
def has_object_permission(self, request, view, obj):
print "has_object_permission"
return False
Run Code Online (Sandbox Code Playgroud)
这是我的视图结构:
class CompleteList(generics.ListCreateAPIView):
permission_classes = (CanAccessData,)
serializer_class = SomeSerializer
model = Some
filter_backends = (filters.OrderingFilter, filters.SearchFilter)
ordering_fields = (tuple of Some fields)
search_fields = ordering_fields
ordering = ('-create_date')
Run Code Online (Sandbox Code Playgroud)
仍然has_object_permission没有被调用,has_permission尽管被调用。
| 归档时间: |
|
| 查看次数: |
2707 次 |
| 最近记录: |