小编典典

如何使用JSON序列化Python字典?

json

我正在尝试使Django函数进行JSON序列化并将其返回到HttpResponse对象中。

def json_response(something):
    data = serializers.serialize("json", something)
    return HttpResponse(data)

我正在这样使用它:

return json_response({ howdy : True })

但是我得到这个错误:

"bool" object has no attribute "_meta"

有任何想法吗?

编辑:这是回溯:

http://dpaste.com/38786/


阅读 253

收藏
2020-07-27

共1个答案

小编典典

更新:Python现在拥有自己的json处理程序,只需使用即可import json代替simplejson


Django序列化器模块旨在序列化Django
ORM对象。如果要对常规Python字典进行编码,则应使用simplejson,它与Django一起提供,以防您尚未安装。

import json

def json_response(something):
    return HttpResponse(json.dumps(something))

我建议使用应用程序/ javascript Content-Type标头将其发送回去(您也可以使用application /
json,但这会阻止您在浏览器中进行调试):

import json

def json_response(something):
    return HttpResponse(
        json.dumps(something),
        content_type = 'application/javascript; charset=utf8'
    )
2020-07-27