我有一个带有看起来像
的jinja宏的烧瓶应用程序{% macro icon(site, title="") %}
<img src="{{ url_for('static', filename="icons/XXX.png") }}" alt="{{ title }}" class="img-icon">
{% endmacro %}
我需要做的是让文件名等于传递给宏的site
变量。因此,它应该具有值site
。
有办法吗?
答案 0 :(得分:9)
这应该有效:
{% macro icon(site, title="") %}
<img src="{{ url_for('static', filename='icons/%s.png' % site) }}" alt="{{ title }}" class="img-icon">
{% endmacro %}
答案 1 :(得分:4)
自2.6(pep-3101)以来,python中字符串格式化的推荐方法是使用str.format()
:
{% macro icon(site, title="") %}
<img src="{{ url_for('static', filename='icons/{0}.png'.format(site)) }}" alt="{{ title }}" class="img-icon">
{% endmacro %}