Ich habe eine benutzerdefinierte Tag-Funktion definiert und versuche, zwei Argumente in die Funktion zu übergeben, die aus dem Array stammen, das ich durchschlinge.Wie verwendet man Django-Template-Variablen in Template-Tags?
Im Wesentlichen, ich versuche so etwas wie die folgenden Funktionen ausführen:
{% for x in array %}
{% custom_tag_function {{ forloop.counter }} {{ array|length }} %}
{% endfor %}
aber ich bin ein Parsing-Fehler als django Empfangen wird im Argument als String übergeben (zB "{{ forloop.counter }}"
) anstelle des bewerteter Wert.
Ich habe versucht, dies zu tun:
{% for x in array %}
{% with cnt={{ forloop.counter }} len={{ array|length }} %}
{% custom_tag_function cnt len %}
{% endfor %}
Ich aber nehmen die gleichen Parsing-Fehler.
Gibt es einen geeigneten Weg, dies innerhalb Django zu tun?
In Ihrem zweiten Versuch haben Sie vergessen haben, {% endwith%} zu schreiben. –
Haben Sie das überprüft? {% custom_tag_function forloop.counter array | length%} –
Das hat funktioniert, danke Mehdi! – Marto