2017-09-14 74 views
1

我有一个Jinja宏定义如下。Jinja中的Django静态资产引用模板

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”不工作上面的代码作为神社不处理{{}}内的另一个{{}}

什么工作都是围绕这个?

回答

2

我强烈推测<img src="{{ static(logo) }}">应该工作。如果没有,我会报告这是一个错误。

+0

我得到了这个错误。异常类型:TemplateSyntaxError 异常值:expected token':','''' –

+0

因此...对我来说,它看起来像执行是搞砸了,因为它对我来说没有任何神圣的感觉。 –

+0

对不起。有效。这是做到这一点的方法。非常感谢你。我上面提到的错误是由于一个无关的问题。 –