将异构django模型对象的列表转换为json对象

时间:2012-09-22 11:15:11

标签: django django-models

我有一个Django模型对象列表

a=[obj1_mod1, obj2_mod2......objn_modn]

其中obj1_mod1 =来自model1的对象1,依此类推。

现在我想创建一个json对象,它从模型对象django pythons中查找所有字段,如:

{"mod1":{f1_mod1:val1, f2_mod1:val2,....}
 "mod2":{f1_mod2:val1,f2_mod2:val2,....}

"modn":{f1_modn:val1, f2_modn:val2,....}
}

其中f1_mod1 =模型1的字段1,对应的val 1 = f1_mod1的属性。

如何去做?

1 个答案:

答案 0 :(得分:0)

使用values查找,它返回一个字典。

from collections import defaultdict

instance_list = [obj1_mod1, obj2_mod2 .... objn_modn]
json_dict = defaultdict(dict)

for i in instance_list:
   json_dict[unicode(i)] = i.values()

jsonified = json.dumps(json_dict)