我想使用simplejson序列化Django模型。 Django的序列化程序不支持字典...并且simplejson不支持Django Querysets。这是一个相当难解的问题。JSON使用simplejson序列化Django模型
在模型中有赞助商有一个外键赞助级别,我试图将属于某个赞助商级别的所有赞助者组织在一起。下面是生成列表的代码:
from django.shortcuts import get_list_or_404
from special_event.models import Sponsor, SponsorLevel
sponsor_dict = {}
roadie_sponsors = get_list_or_404(Sponsor, level__category = SponsorLevel.ROADIE_CHOICE)
for item in roadie_sponsors:
try:
sponsor_dict[item.level.name].append(item)
except KeyError:
sponsor_dict[item.level.name] = [item]
这里的sponsor_dict
的样子,一旦它的“制造”
{
'Fan': [<Sponsor: Fan Sponsor>],
'VIP': [<Sponsor: VIP Sponsor>],
'Groupie': [<Sponsor: Groupie Sponsor>],
'Silver': [<Sponsor: Silver Sponsor>],
'Bronze': [<Sponsor: Another Bronze Sponsor>, <Sponsor: Bronze Sponsor>]
}
我只在每个级别增加了一个赞助商,除了青铜,只是为了显示它是如何作品。我想要做的就是将它“全部”放入JSON中,以便jQuery可以轻松解释它。 Django的其他序列化程序(如XML或YAML)可以完成此任务吗?我可以“扩展”Django JSON序列化程序来处理字典或“扩展”simplejson来处理Django QuerySet对象吗?
这是非常聪明的 – babonk 2012-03-08 19:29:30