Ich habe ein Modell Quest
und es hat ein Feld type
. Ich möchte ein Diktat haben, das type
zu einer Liste von Quest
mappt. Meine derzeitige Art, dies zu tun, besteht darin, alle Quest
Objekte zu durchlaufen und sie an die Liste anzuhängen.Django erstellen ein Dict mit Werten eines Modellfeldes als Schlüssel und Modellinstanz als Wert
from collections import defaultdict
quests = Quest.objects.all()
dictionary = defaultdict(list)
for quest in quests:
dictionary[quest.type].append(quest)
Ich frage mich, ob Django QuerySet
eine bessere Art und Weise hat es zu tun. Ich schaute nach oben aggregation()
, value_list()
und values()
, aber sie scheinen nicht zu erreichen, was ich tun möchte.