没有模型的 Django REST 框架序列化程序

我在研究几个聚合数据的端点。例如,其中一个端点将返回一个对象数组,每个对象对应一天,它将包含特定用户发布的评论、喜欢和照片的数量。这个对象有一个预定义的/set 模式,但是我们没有将它存储在数据库中,所以它没有模型。

在没有模型的情况下,我是否仍然可以对这些对象使用 Django 序列化器?

56963 次浏览

You can create a serializer that inherits from serializers.Serializer and pass your data as the first parameter like:

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)