【发布时间】:2015-01-19 06:20:54
【问题描述】:
我在 Flask 中有一个简单的 api,可以在 Python 2.7 上运行良好。视图通过在 transform_data 字典上调用 jsonify 来返回 json 响应。
return jsonify(transform_data)
现在我正在迁移到 python 3.4,但出现以下错误。
raise TypeError(repr(o) + " is not JSON serializable")
TypeError: ItemsView(OrderedDict([('Car', 1217.62), ('Transfer', 551.86), 'Service Fees', 1313.6), ('MISC Costing', 82.09), ('Air', 35858.23), ('Hotel', 6179.34)])) is not JSON serializable
为什么会出现此错误?我需要进行哪些更改才能在 Python 3.4 上进行这项工作?
【问题讨论】:
-
ItemsView?听起来像 HttpResponse 的子类。
transform_data是什么类型的? -
你能打印
type(transform_data)吗? ItemsView 绝对是您的课程。如果没有您的代码,我们无法说明为什么在 python3.4 的情况下会通过。
标签: python python-3.x flask