>我正在尝试序列化对象列表,但我得到一个错误,
如何序列化此对象列表?谢谢
ids = request.data.__getitem__("ids")
questions_array = []
for id in ids:
questions = Question.objects.filter(pk=id)
questions_array.append(questions)
serializer = QuestionSerializer(questions_array, many=True)
return Response(serializer.data)
我总是收到此错误:类型错误:init(( 得到一个意外的关键字参数 'fields'
直接
序列化QuerySet怎么样:
questions = Question.objects.filter(pk__in=[1, 4, 7])
data = list(questions.values('id',
'first_field',
'second_field',
'....'
))
return JsonResponse({"data": data,}, safe=False)
您在列表中传递了查询集,这是非常错误的。您可以执行以下操作:
for id in ids:
questions = Question.objects.filter(pk=id).first() #so here you will
# get an obejct instead of queryset
questions_array.append(questions)
serializer = QuestionSerializer(questions_array, many=True)
return Response(serializer.data)