Django : Добавление дополнительного действия к SetViewModel при использовании NestedViewSetMixin

Я пытаюсь добавить действие к SetViewModel в Django, эта SetViewModel уже успешно использует NestedViewSetMixin: вот структура моего api вызова :

/api/startups/1/investments

Таким образом, здесь будут перечислены все инвестиции для стартапа с идентификатором 1.

Теперь я хотел бы добавить дополнительное действие, чтобы отображать инвестиции только для определенных стартапов, которые находятся в активном состоянии. Вызов api будет выглядеть следующим образом :

/api/startups/1/investments/get_active_investment/

В данный момент я получаю этот код ошибки :

AttributeError at /api/startups/1/investments/get_active_investment/
Got AttributeError when attempting to get a value for field `collected_amount` on serializer `InvestmentSerializer`.
The serializer field might be named incorrectly and not match any attribute or key on the `QuerySet` instance.
Original exception text was: 'QuerySet' object has no attribute 'collected_amount'.
Request Method: GET

Вот мой код для SetViewModel :

class InvestmentViewSet(NestedViewSetMixin, ModelViewSet):
    """
    A viewset that provides `retrieve`, `create`, and `list` actions for Investments.

    """
    model = Investment
    serializer_class = InvestmentSerializer
    queryset = Investment.objects.all()

    @action(detail=False, methods=['Get'])
    def get_active_investment(self, *args, **kwargs):
        """Get active investment
        Only One investment/startup is active
        """
        queryset = self.get_queryset().filter(active=True)
        serializer = self.get_serializer(queryset, many=False)
        return Response(serializer.data)
Вернуться на верх