Например, допустим, есть пользовательский тег шаблона
{% custom_tag "parameter" %}
Этот тег требует серьезной работы с базой данных для вычисления.
Теперь мне нужно что-то подобное (псевдокод):
if {% custom_tag "parameter" %}
....
else
....
Я знаю, что с переменными контекста я могу сделать просто:
{% with variable.x.y.z as v %}
{% if v %}
Blah-Blah-Blah {{ v }}
{% else %}
No value
{% endif %}
{% endwith %}
Но есть ли способ добиться этого с помощью значения тега шаблона?
EDIT:
Единственный вариант, который я придумал, это сделать фильтр из моего тега шаблона:
{% if "parameter" | custom_tag %}
Blah {{ "parameter" | custom_tag }}
{% else %}
....
{% endif %}
Но эта опция заставляет custom_tag выполняться дважды, и это не очень хорошо с точки зрения производительности