Zugriff auf "unbekannte" Attribute in jinja2
Verfasst: Montag 14. September 2009, 10:07
Hallo zusammen,
ich komme einfach bei folgendem Problem nicht weiter:
Ich habe eine Struktur der folgenden Art:
Der wichtige Aspekt ist nun, dass ich nicht weiß, welche Attribute sich unterhalb von categories befinden. Ich weiß also nicht, dass es "foo" und "bar" überhaupt gibt als Kategorie; vor allem sind die bei jeder Person unterschiedlich.
Nun will ich diese aber in einem Template ausgeben. Mein Ansatz bisher:
Leider klappt das nicht, d.h. ich bekomme nur einen leeren String statt der Werte. "cat" hingegen wird mir wunderbar als "foo" und "bar" angezeigt.
Eigentlich kann ich ja per "object.name" Attribute (oder Items) von Objekten erhalten. In diesem Falle scheint aber das "kat" in der inneren for-Schleife nicht wieder als Attribut verwendbar.
Wie kann ich nun diese Problem lösen?
ich komme einfach bei folgendem Problem nicht weiter:
Ich habe eine Struktur der folgenden Art:
Code: Alles auswählen
data = [
{
"name": "Max Mustermann",
"categories": {
"foo": 42,
"bar": 123
}
},
# hier kommen noch weiter Datensätze
{
...
}
]
Nun will ich diese aber in einem Template ausgeben. Mein Ansatz bisher:
Code: Alles auswählen
<ul>
{% for person in data %}
<li>
<p>{{ person.name }}</p>
<ul>
{% for kat in person.categories %}
<li>{{ kat }}: {{ person.categories.kat }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
Eigentlich kann ich ja per "object.name" Attribute (oder Items) von Objekten erhalten. In diesem Falle scheint aber das "kat" in der inneren for-Schleife nicht wieder als Attribut verwendbar.
Wie kann ich nun diese Problem lösen?