Jinja模板中的Django静态资产参考

时间:2017-09-14 14:54:40

标签: html django web macros jinja2

我有一个Jinja宏定义如下。

globalmacros.html

{% macro SUINavMenu(leftlist=[],logo="images/Logo_WEB_450_250.png") %}
 <div class="ui pointing secondary menu">
  <div class="item">
  <img src="{{ static({{ logo }}) }}"> 
 </div>
 {% for item in leftlist %}
  <a class="item" href="{{ item[1] }}">
   {{ item[0] }}
  </a>
 {% endfor %}
 </div>
{% endmacro %}

dashboard.html

{% from "macros/globalmacros.html" import SUINavMenu %}
{% block navigation %}
{{  SUINavenu(leftlist=[["Home","/home/"],["New Bill","/newbill/"]],
    logo="images/web_logo.png") }}
{% endblock navigation %}

我将“globalmacros.html”中定义的宏导入“dashboard.html”并尝试传递徽标位置。但是我不确定如何这样做。

在非宏版本中,以下代码可以正常工作。

<img src=" {{ static('images/logo_web.png') }} "></img>

“globalmacros.html”中的上述代码无效,因为Jinja不会在另一个{{}}内处理{{}}

这方面的工作是什么?

1 个答案:

答案 0 :(得分:2)

我强烈认为<img src="{{ static(logo) }}">应该有用。如果它没有,我会将此报告为错误。