2017-08-29 123 views
0

如何分配jinja2变量值以便在模板中稍后使用?如何分配jinja2变量值以便在模板中稍后使用?

{% if 'clear' in forcast_list[4] %} 
{% img = "sunny.png" %} 
{% elif "cloudy" in forcast_list[4] %} 
{% img = "sun-cloudy-thunder.png" %} 
{% endif %} 

<div style="background: right bottom no-repeat url('../static/img/{{img}}')" class="weather-icon-pos"> 
    <!-- weatehr Icon div --> 
</div> 

任何帮助将不胜感激。

+0

Jinja2的变量从您的水壶应用程序通过。你必须在'render_template()'代码中指定它们 – Mangohero1

回答

1

使用{% set %}:关于Jinja2的here分配

{% if 'clear' in forcast_list[4] %} 
{% set img = "sunny.png" %} 
{% elif "cloudy" in forcast_list[4] %} 
{% set img = "sun-cloudy-thunder.png" %} 
{% endif %} 

更多信息。

或者根本蟒蛇中的条件语句,并将结果传递给Jinja2的模板:

if 'clear' in forcast_list[4]: 
    img = "sunny.png" 
elif 'cloudy' in forcast_list[4]: 
    img = "sun-cloudy-thunder.png" 
... 
return render_template('foo.html', img=img) 
+0

有没有办法在jinja本身中设置一个变量值? –

+0

@Ciastopiekarz做了一点挖掘。看到我更新的答案 – Mangohero1

相关问题