Seite 1 von 1

Jinja - Dyn. Imagelinks innerhalb einer for-schleife

Verfasst: Mittwoch 5. November 2008, 11:17
von bake
Hier das Codebeispiel:

Code: Alles auswählen

{% for partner in htmldic['partnerlist'] %}
<tr>
	<td><img src="{{ url_for('portraits', file={{partner.portraitlink }}') }}">
        </td>
</tr>
{% endfor %}
Sobald ich anstatt file='festerlink.jpg', file={{partner.portraitlink }} schreibe kriege ich den Fehler: TemplateSyntaxError: expected token 'colon', got '}'

Lässt sich das ganze beheben oder besser gesagt was kann ich tun, damit die Bilder angezeigt werden?

Verfasst: Mittwoch 5. November 2008, 11:36
von sma
Man kann die {{ nicht schachteln. Wozu auch? Einschlüsse in {{ }} sind doch dynamische Python (bzw. Jinja) Codefragmente in dem statischen Text, das zu schachteln macht keinen Sinn. Warum lässt du die inneren {{ }} nicht einfach weg. Ich vermute, du hast eine Variable "partner" die ein Attribut "portraitlink" hat.

Und du hast da noch ein ' vor der Klammer ), welches dort auch nichts zu suchen hat.

Übrigens erlaubt Jinja doch meines Wissens `htmldic.partnerlist` als alternative IMHO besser lesbare Syntax zu dem [ ]-Zugriff.

Stefan

Verfasst: Mittwoch 5. November 2008, 12:21
von bake
Das ' gehörte natürlich nicht dorthin. Vielen Dank für die Hilfe bzw. den Wink mit dem Zaunpfahl. Im Nachhinein frage ich mich wie ich so etwas nahe liegendes übersehen konnte... :?