webentwicklung-frage-antwort-db.com.de

Django REST Framework Serializer ohne Modell

Ich arbeite an ein paar Endpunkten, die Daten aggregieren. Einer der Endpunkte gibt beispielsweise eine Reihe von Objekten zurück, wobei jedes Objekt einem Tag entspricht, und er enthält die Anzahl der Kommentare, Likes und Fotos, die ein bestimmter Benutzer gepostet hat. Dieses Objekt hat ein vordefiniertes/festgelegtes Schema, wir speichern es jedoch nicht in der Datenbank, sodass es kein Modell hat.

Gibt es eine Möglichkeit, wie ich Django Serializer für diese Objekte verwenden kann, ohne ein Modell zu haben?

23
Farid El Nasire

Sie können einen Serializer erstellen, der von serializers.Serializer erbt, und Ihre Daten als ersten Parameter übergeben, z.

serializers.py

from rest_framework import serializers

class YourSerializer(serializers.Serializer):
   """Your data serializer, define your fields here."""
   comments = serializers.IntegerField()
   likes = serializers.IntegerField()

views.py

from rest_framework import views
from rest_framework.response import Response

from .serializers import YourSerializer

class YourView(views.APIView):

    def get(self, request):
        yourdata= [{"likes": 10, "comments": 0}, {"likes": 4, "comments": 23}]
        results = YourSerializer(yourdata, many=True).data
        return Response(results)
52
codeadict