我有一些这样的模板:
base.html文件
<script src="/js/jquery.js"></script>
{% block scripts %}
{% end %}
博客-base.html文件
{% extends base.html %}
{% block scripts %}
<script src="/js/blog-base.js"></script>
{% end %}
博客-article.html
{% extends blog-base.html %}
{% block scripts %}
<script src="/js/blog-article.js"></script>
{% end %}
我希望最终产品中包含所有三个脚本,但当然上面的代码不会这样做,而是选择将blog-base.html的script
块替换为博客中的块{ article.html。除了设置一个单独的块名称之外,还有什么方法可以使它工作吗?我为blog-article.html
{% extends base.html %}
{% block scripts %}
<script src="/js/blog-base.js"></script>
{% render-block scripts %}
{% end %}
{% end %}
让它渲染子模板的scripts
块和定义父base.html
要使用的块,但我怀疑存在这样的事情。
答案 0 :(得分:0)
目前无法实现(并且很难以Tornado模板目前的工作方式实施)。对于添加脚本标记的特定情况,您可以使用UIModules(它具有向当前页面添加脚本或css链接的特殊支持),而不是扩展基本模板。