Фильтрация many2many django rest framework

У меня есть модель сущности, и я хочу перечислить все экземпляры Entity на основе id экземпляра категории в ней. В общем, я хочу перечислить все экземпляры Entity с id категории 1 с помощью /specialists/category/1, но по какой-то причине я получаю

Not Found: /api/v1/specialists/categories/1

Хотя код выглядит нормально.

class Entity(models.Model):
    entity_category = models.ManyToManyField(Category)


class SpecialistSerializer(serializers.ModelSerializer):
    entity_category = SpecialistCategorySerializer(read_only=True, many=True)

    class Meta:
        model = Entity
        fields = (....., entity_category)


class SpecialistsPerCategory(generics.ListAPIView):
    serializer_class = SpecialistSerializer

    def get_queryset(self):
        category_id = self.kwargs['pk']
        return Entity.objects.filter(entity_category=category_id, lookup_type='in')
    path('specialists/category/<int:pk>', SpecialistsPerCategory.as_view()),

У вас есть идеи, что не так?

У вас есть category в path, но множественное число categories в url.

Также я думаю, что это не будет работать, потому что SpecialistSerializer имеет модель Entity, но вы хотите получить pk из Category в SpecialistsPerCategory, который основан на этом сериализаторе.

Вернуться на верх