我有一个相同模型类型的对象列表。我想遍历这个列表并创建一个JSON发送回来。我试过一些东西,比如二维数组,谷歌,。。。但找不到这样的东西?尽管我觉得这不难。
我现在的代码是:
def get_cashflows(request):
response_data = {}
cashflow_set = Cashflow.objects.all();
i = 0;
for e in cashflow_set.iterator():
c = Cashflow(value=e.value, date=str(e.date));
response_data[i] = c;
return HttpResponse(
json.dumps(response_data),
content_type="application/json"
)
这里不可能在json.dumps中给出模型。但我怎么能给它一个以上的对象呢?
错误:
TypeError: coercing to Unicode: need string or buffer, float found
[08/Sep/2016 14:14:00] "GET /getcashflow/ HTTP/1.1" 500 85775
一般来说,就是这样做的:
更多信息请参见Django Documentation
正如@Ivan所提到的,如果您想要一个API层,DRF会立即完成这项工作,但是如果您只是希望一个基本视图返回一些json而不需要配置新包的开销,那么对于django的序列化器来说,这应该是一个相当简单的操作:
即使默认的json序列化程序不能完全满足您的需要,这些文档也对如何实现这一点进行了很好的分解
https://docs.djangoproject.com/en/1.10/topics/serialization/#serialization-formats-json
还要注意:
您可以直接使用queryset
serializers.serialize("json", Cashflow.objects.all())
你也不会在循环中递增
i
。。。相关问题 更多 >
编程相关推荐