Django TypeError:类型为“User”的对象不可JSON序列化

Django TypeError:类型为“User”的对象不可JSON序列化,django,python-3.x,django-rest-framework,Django,Python 3.x,Django Rest Framework,如何在Django Rest框架中返回对象列表。我正在调用一个返回对象列表的函数 from rest_framework.views import APIView from rest_framework.response import Response import json class MyView(APIView): from .serializers import MySerializer from app.permissions import MyPermissionC

如何在Django Rest框架中返回对象列表。我正在调用一个返回对象列表的函数

from rest_framework.views import APIView
from rest_framework.response import Response
import json

class MyView(APIView):
    from .serializers import MySerializer
    from app.permissions import MyPermissionClass
    from .models import MyModel

    serializer_class = MySerializer
    queryset = MyModel.objects.all()
    permission_classes = (MyPermissionClass,)
    pagination_class = None

    def get(self, request, *args, **kwargs):
        data=myfunction(a,b,c)
        # data={list}<class 'list'>: [<User: Negiiii | negiiii>, <User: Negiiii | negiiii>]
        data=json.dumps(data)
        return Response({"data":data})

您可以使用DRF序列化程序来序列化数据。 首先需要将序列化器类定义为

# serializers.py
from rest_framework import serializers


class UserSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserModel
        fields = ('name', 'rollno')
然后,在视图中使用UserSerializer作为

def get(self, request, *args, **kwargs):
    data = myfunction(a, b, c)
    response_data = UserSerializer(data, many=True)
    return Response({"data": response_data.data})

这是一个用户模型查询集吗?你能添加MySerializer类吗?我没有使用response\u data=MySerializerdata,many=True,而是使用response=self.get\u serializerdata,many=True谢谢你的帮助!如果你能在正确的时间提供正确的信息,我本可以写一个更好的答案:
def get(self, request, *args, **kwargs):
    data = myfunction(a, b, c)
    response_data = UserSerializer(data, many=True)
    return Response({"data": response_data.data})