Извлечение детей с заданным условием - Django MPTT и Django rest framework

enter image description here

В этом дереве я хочу сделать запрос так, чтобы извлекалось только первое поколение красного круга. Но условием является то, что значение каждого круга должно быть больше нуля, т.е. зеленые круги:

enter image description here

Сериализаторы:

class CircleBaseSerializer(serializers.ModelSerializer):
    class Meta:
        model = Circle
        fields = ('id', 'value')


class CircleChildrenSerializer(CircleBaseSerializer):
    class Meta(CircleBaseSerializer.Meta):
        pass

class CircleParentSerializer(CircleBaseSerializer):
    children = CircleChildrenSerializer(many=True)
    class Meta(CircleBaseSerializer.Meta):
       pass

Вид:

class CircleViewSet(ReadOnlyModelViewSet):
    serializer_class = CircleParentSerializer
    queryset = Circle.objects.all()
    def get_queryset(self):
        id = self.kwargs["id"]
        u=Circle.objects.get(pk=id)

Конечно, результатом будет [5(1,0,3)], что нежелательно. Как я могу выполнить этот запрос?

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