我想从include语句内的上下文中实现变量。 代码:
views.py
historic_trends_parameters = {'kpi':'kpi_name','dimension':'dimension_name'}
context = {'historic_trends_parameters':historic_trends_parameters}
return render(request,'homepage.html',context=context)
我要放在include
语句中的模板:
myTemplate.html
<div class='MyClass'>
<object class='tableauViz' width='{{ width }}' height='{{ height }}' style='display:none;'>
<param name='show_tabs' value='{{ show_tabs }}' />
<param name='filter' value='{{ filter_values }}' />
</object>
</div>
homepage.html
// some code
<div>
{% include "myTemplate.html" with
width='700' height='400' show_tabs='yes'
filter='KPIParameter=historic_trends_parameters.kpi' %}
</div>
// some more code
结果:
当我激活django并转到homepage
时,这就是我在页面源中看到的内容:
<div class='MyClass'>
<object class='tableauViz' width='700' height='400' style='display:none;'>
<param name='show_tabs' value='yes' />
<param name='filter' value='KPI Parameter=historic_trends_parameters.kpi' />
</object>
</div>
我找不到从historic_trends_parameters.kpi
正确传递context
值的方法。
我期望的结果应该是:
<div class='MyClass'>
<object class='tableauViz' width='700' height='400' style='display:none;'>
<param name='show_tabs' value='yes' />
<param name='filter' value='KPI Parameter=kpi_name' />
</object>
</div>
意思是historic_trends_parameters.kpi
变成'kpi_name'