Сериализация нескольких объектов без ModelViewSet - PullRequest
0 голосов
/ 29 марта 2020

У меня есть models и serializer и views с rest framework

Однако я хочу сделать просмотр не по viewsets.ModelViewSet моим исходным get_by

но в ModelViewSet

можно легко настроить сериализатор

serializer_class = MyTextSerializer

serializer.py

class MyTextSerializer(serializers.ModelSerializer):
    my_status = serializers.SerializerMethodField()    
    class Meta:
        model = MyText
        fields = ('id','text','created_at','pub_date')  
    def get_my_status(self,obj):
        res = ["mystatus"]
        return res

обычный ModelViewSet просмотр, но я не хочу использовать это сейчас.

class MyTextViewSet(viewsets.ModelViewSet):
    queryset = MyText.objects.all().order_by('created_at')
    serializer_class = MyTextSerializer ## serializer works here.
    pagination_class = StandardResultsSetPagination

в views.py Я хочу использовать это.

@api_view(['POST', 'GET'])
def get_by(request):
    ts = MyTexts.objects.all().order_by('id')[0:10]
    serializer = MyTextSerializer(ts[0]) ## it works, but I want to serialize multiple items `ts`
    return Response(serializer.data)

Однако я понятия не имею, как передать множественный набор запросов в Serializer как ModelViewSet доза.

Кто-нибудь помогает ??

1 Ответ

2 голосов
/ 29 марта 2020

Использование many=True as,

serializer = MyTextSerializer(<b>ts, many=True</b>)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...