Mein Wörterbuch sieht folgendermaßen aus (Wörterbuch innerhalb eines Wörterbuchs):
{'0': {
'chosen_unit': <Unit: Kg>,
'cost': Decimal('10.0000'),
'unit__name_abbrev': u'G',
'supplier__supplier': u"Steve's Meat Locker",
'price': Decimal('5.00'),
'supplier__address': u'No\r\naddress here',
'chosen_unit_amount': u'2',
'city__name': u'Joburg, Central',
'supplier__phone_number': u'02299944444',
'supplier__website': None,
'supplier__price_list': u'',
'supplier__email': u'[email protected]',
'unit__name': u'Gram',
'name': u'Rump Bone',
}}
Jetzt versuche ich nur, die Informationen in meiner Vorlage anzuzeigen, aber ich habe Probleme. Mein Code für die Vorlage sieht folgendermaßen aus:
{% if landing_dict.ingredients %}
<hr>
{% for ingredient in landing_dict.ingredients %}
{{ ingredient }}
{% endfor %}
<a href="/">Print {{ landing_dict.recipe_name }}</a>
{% else %}
Please search for an ingredient below
{% endif %}
Es zeigt mir nur '0' auf meiner Vorlage?
Ich habe auch versucht:
{% for ingredient in landing_dict.ingredients %}
{{ ingredient.cost }}
{% endfor %}
Dies zeigt nicht einmal ein Ergebnis an.
Ich dachte, ich muss vielleicht eine Ebene tiefer iterieren, also habe ich Folgendes versucht:
{% if landing_dict.ingredients %}
<hr>
{% for ingredient in landing_dict.ingredients %}
{% for field in ingredient %}
{{ field }}
{% endfor %}
{% endfor %}
<a href="/">Print {{ landing_dict.recipe_name }}</a>
{% else %}
Please search for an ingredient below
{% endif %}
Dies zeigt aber nichts an.
Was mache ich falsch?
quelle
values[0]
stattdessen musste ichvalues.items
.items
. Die Dokumentationhttps://docs.djangoproject.com/en/1.4/topics/templates/
enthält ein Beispiel, das nicht funktioniert, aber kein Beispiel, das funktioniert.{% for k,v in dict %}
gibt bizarre Ergebnisse - k ist das erste Zeichen jedes Schlüssels und v ist leer, während{% for k in dict %}
der vollständige Schlüssel zurückgegeben wird, jedoch keine Möglichkeit zum Abrufen von Werten besteht (dadict.k
k als Literalzeichen behandelt wird).https://docs.djangoproject.com/en/1.8/ref/templates/builtins/#for
dokumentieren die Tags und Filter dies zusammen mit den Forloop-Variablen, die beim Formatieren einer Liste hilfreich sein können.values.items
+1Diese Antwort hat bei mir nicht funktioniert, aber ich habe die Antwort selbst gefunden. Niemand hat jedoch meine Frage gestellt. Ich bin zu faul, um es zu fragen und dann zu beantworten, also werde ich es einfach hier einfügen.
Dies ist für die folgende Abfrage:
In Vorlage:
quelle
Wenn Sie eine Variable
data
(Wörterbuchtyp) als Kontext an eine Vorlage übergeben, sollte Ihr Code wie folgt lauten:quelle