热门标签:
Q:

django webapi:dump django model to JSON

我试图将django模型转储为JSON格式。 我试过这样做:

import json
from api.models import User
from django.http import HttpResponse

def users(request):
    users = User.objects.all()
    return HttpResponse(json.dumps(users), content_type="application/json")

但它引发以下错误:

[<User: Paul McCartney>, <User: John Lennon>, <User: George Harrison>, <User: Ringo Starr>] is not JSON serializable

我知道我可以遍历所有对象并创建字典的手动列表,但我希望有更好的方法来做到这一点。 有吗?

原网址
A:
from django.core import serializers

data = serializers.serialize('json', User.objects.all())

您可以了解如何在反序列化中获取这些数据:

import json
json.loads(data)

所有回答

共 1 条

author avatar

我知道这是一个老问题,但我发现将其转换为列表允许它被序列化。

import json
from api.models import User
from django.http import HttpResponse

def users(request):
    users = list(User.objects.all())
    return HttpResponse(json.dumps(users), content_type="application/json")

相似问题