Chciałbym użyć simplejson do serializacji modelu Django. Serializer Django nie obsługuje słowników ... a simplejson nie obsługuje Django Querysets. To dość zagadka.JSON Serializing Django Models with simplejson
W modelu są sponsorzy, którzy mają klucz obcy na poziomie sponsora, staram się pogrupować wszystkich sponsorów należących do określonego poziomu sponsora. Oto kod, który generuje listę:
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]
oto co sponsor_dict
wygląda po jego „made”
{
'Fan': [<Sponsor: Fan Sponsor>],
'VIP': [<Sponsor: VIP Sponsor>],
'Groupie': [<Sponsor: Groupie Sponsor>],
'Silver': [<Sponsor: Silver Sponsor>],
'Bronze': [<Sponsor: Another Bronze Sponsor>, <Sponsor: Bronze Sponsor>]
}
ja tylko dodaje jeden sponsora na każdym poziomie, z wyjątkiem brązu, żeby pokazać, jak go Prace. Wszystko, co chcę zrobić, to uzyskać "wszystko" w JSON, aby jQuery mógł je łatwo zinterpretować. Czy inne serializery Django (takie jak XML lub YAML) mogą to osiągnąć? Czy mogę "rozszerzyć" Serializer JSON Django do obsługi słowników lub "rozszerzyć" simplejson do obsługi obiektów Django QuerySet?
to bardzo mądry – babonk