Django模板引擎的静态模板标签

时间:2018-08-22 22:44:25

标签: django

我有以下代码:

<img src="{% static 'images/{{i.sideid.sidepic}}' %}"/>

但这不会加载图片...

但是,如果我将{{i.sideid.sidepic}}更改为图片名称“ republic.png”,则可以。所以,是的,{{i.sideid.sidepic}}实际上是完全相同的名称(“ republic.png”),因为我在django视图中进行了打印并在我的cmd中将其显示为完全相同的名称“ republic.png”。

我想必须有一种特定的方法将{{i.sideid.sidepic}}添加到Jinja {%%}中。

1 个答案:

答案 0 :(得分:2)

您应该可以将字符串与add template filter连接起来:

{% with 'images/'|add:i.sideid.sidepic as image %}
  {% static image %}
{% endwith %}

as之后的变量可以是您想要的任何内容

{% with 'images/'|add:i.sideid.sidepic as sidepic %}
  {% static sidepic %}
{% endwith %}

您尝试执行的操作与static模板标记不太兼容,因为它需要一个字符串或一个变量。

希望有帮助!