Django DRF: @permission_classes не работаетPython

Программы на Python
Anonymous
Django DRF: @permission_classes не работает

Сообщение Anonymous »

У меня есть представление с настраиваемым действием, которое должно иметь настраиваемое разрешение «IsRightUser». Однако его has_object_permission никогда не вызывается, хотя я пытаюсь получить доступ к объекту с помощью self.get_object(), на мой взгляд.

Код: Выделить всё

class MyView(mixins.ListModelMixin, viewsets.GenericViewSet):
serializer_class = MySerializer
lookup_field = 'uuid'
queryset = MyObject.objects.all()

@action(methods=['get'], detail=True)
@permission_classes([IsRightUser])
def groups(self, request, uuid=None):
# prints []
print(self.permission_classes)
my_object = self.get_object()
groups = Group.objects.filter(my_object=my_object)
serializer = MySerializer(groups, many=True)
return Response(serializer.data)
Здесь вы можете увидеть мое специальное разрешение, которое никогда не вызывается.

Код: Выделить всё

class IsRightUser(BasePermission):
def has_object_permission(self, request, view, obj):
# never called
return True
Когда я использую Permission_classes = [IsRightUser], на мой взгляд (т. е. непосредственно под полем поиска), это работает (к сожалению, это для меня это нереально).

Любая помощь очень ценится.

Подробнее здесь: https://stackoverflow.com/questions/601 ... ot-working

Вернуться в «Python»