django 1.5-如何在静态标签内使用变量

我目前正在将项目中的所有静态文件引用迁移到django 1.5引入的新{%static%}标记,但是我遇到了问题,在某些地方我使用变量来获取内容。使用新标签,我无法解决此问题?

当前代码:

<img src="{{ STATIC_URL }}/assets/flags/{{ request.LANGUAGE_CODE }}.gif" alt="{% trans 'Language' %}" title="{% trans 'Language' %}" />

应该是什么(这不起作用):

<img src="{% static 'assets/flags/{{ request.LANGUAGE_CODE }}.gif' %}" alt="{% trans 'Language' %}" title="{% trans 'Language' %}" />

回答:

你应该可以使用add模板过滤器连接字符串:

{% with 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' as image_static %}

{% static image_static %}

{% endwith %}

你尝试执行的操作不适用于static template标记,因为它仅采用字符串或变量:

{% static "myapp/css/base.css" %}

{% static variable_with_path %}

{% static "myapp/css/base.css" as admin_base_css %}

{% static variable_with_path as varname %}

以上是 django 1.5-如何在静态标签内使用变量 的全部内容, 来源链接: utcz.com/qa/409635.html

回到顶部