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?
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)