私はこのようなことをしようとしています:
{% macro obj_type_1 %}
stuff
{% endmacro %}
{% macro obj_type_2 %}
stuff
{% endmacro %}
{{ (obj|get_type)(obj) }}
この例では、 はorget_type
を返すフィルタです。つまり、 を呼び出すマクロの名前です。現在、いくつかのテンプレートで構造データとして使用され、コンテキストに応じて異なるマークアップでレンダリングされるため、構成出力でマークアップしたくありません。obj_type_1
obj_type_2
obj
obj
obj
ここでの構文がややこしいのは承知していますが、それは、私がやりたいことを Jinja テンプレートですぐに実行できないためだと思います。いくつかの構成生成コードの if/elif/else がらくたの大きな問題をテンプレートに置き換えようとしていますが、このビットが問題のようです。