我可以防止一个文件在模板中多次包含吗?在
以下是一些(损坏的)示例代码:
# test.py
import jinja2
ENV = jinja2.Environment(loader=jinja2.FileSystemLoader('.'))
template = ENV.get_template('template.html')
print template.render({})
模板如下所示:
^{pr2}$如您所见,我已经包含jquery两次(oops)。我希望我能做一些与C预处理器类似的事情:
{% if _JQUERY is defined %}
{% else %}
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
{% set _JQUERY = 1 %}
{% endif %}
但这似乎行不通。这里有干净的解决方案吗?在
我这样做的原因是因为我有多个组件——每个组件都有自己的include文件,其中包含使用该组件所需的所有内容。目前,我正在将JQuery从include文件中分解出来,但是随着依赖关系的增长,这可能会变得很乏味,并且多次包含JQuery会导致一些脚本中断。在
我曾经解决过这样的问题:
在基本.html公司名称:
子模板:
^{pr2}$现在我推荐使用RequireJS、HeadJS或YepNope之类的东西
相关问题 更多 >
编程相关推荐