Класс множественных разрешений Django REST не работает

У меня есть два класса разрешений. IsAuthorGroup будет проверять, принадлежит ли пользователь к группе авторов, а IsOwnerOrReadOnly ограничит пользователя в выполнении post и delete, если он не является владельцем объекта.

Но проблема в том, что любой человек из IsAuthorGroup, выполняющий post и delete запрос события, не является владельцем объекта.

Как запретить кому-либо из IsAuthorGroup выполнять post и delete запросы, если он не является владельцем объекта?

вот мой код:

class IsAuthorGroup(permissions.BasePermission):
    def has_permission(self, request, view):
        if request.user and request.user.groups.filter(name='AuthorGroup'):
            return True
        return False


class IsOwnerOrReadOnly(permissions.BasePermission):
    def has_object_permission(self, request, view, obj):
        if request.method in permissions.SAFE_METHODS:
            return True

        # Write permissions are only allowed to the owner of the blog.
        return obj.author == request.user or request.user.is_superuser 



class BlogViewSet(viewsets.ModelViewSet):

    queryset = Blog.objects.all()
    serializer_class = BlogSerializer
    pagination_class = BlogPagination
    lookup_field = 'blog_slug'
    permission_classes = [IsOwnerOrReadOnly & IsAuthorGroup]
Вернуться на верх