Отфильтровать вывод связанных записей в DRF

Всем привет, я новичек в Django, делаю вывод статей со связанными через ForeignKey комментов. У меня есть комментарии которые не опубликованы, т.е. у них есть поле publish, и мне не нужно выводить комменты у которых статус publish=False. Но они все выводятся: введите сюда описание изображения

Код сериализатора постов:

сlass PostSerializer(serializers.ModelSerializer):
# custom field to counter of comments
comments_count = SerializerMethodField()
# related comments to post
comments = CommentSerializer(many=True)

author = serializers.SlugRelatedField(
    slug_field="username",
    read_only=True
)
category = serializers.SlugRelatedField(
    slug_field="name",
    read_only=True
)

class Meta:
    model = Post
    fields = (
        'title',
        'slug',
        'article',
        'created_at',
        'category',
        'author',
        'image',
        'publish',
        'seo_title',
        'seo_description',
        'comments_count',
        'comments',
     )

# calculate count of comments
def get_comments_count(self, obj):
    return obj.comments.count()

def perform_create(self, serializer):
    serializer.save(author=self.request.user)

Код сериализатора комментов:

class CommentSerializer(serializers.ModelSerializer):

author = serializers.SlugRelatedField(
    slug_field="username",
    read_only=True
)
for_news = serializers.SlugRelatedField(
    slug_field="title",
    read_only=True
)

class Meta:
    model = Comment
    fields = "__all__"

def perform_create(self, serializer):
    serializer.save(author=self.request.user)

Код вьюхи постов:

class PostViewSet(viewsets.ModelViewSet):

serializer_class = PostSerializer
queryset = Post.objects.filter(publish=True)
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)

Я так понимаю что в сериализаторе постов мне нужно отфильтровать их по условию publish=False. Подскажите как я могу это сделать?


Ответы (0 шт):