繁体   English   中英

我可以在Tornado中添加一个扩展另一个的模板吗?

[英]Can I include a template that extends another in Tornado?

当我尝试做一些简单的事情时,我遇到了一个错误,包括一个扩展另一个的模板......我不确定这是不是支持的情况,或者我做错了什么,因为它看起来很常见场景。

我为重现错误而编写的最小代码是:

test.py

import tornado.template
loader = tornado.template.Loader(".")
templ = loader.load("t1.html")

t1.html

{% include "t2.html" %}

t2.html

{% extends "t3.html" %}

t3.html

{# empty #}

运行test.py我在tornado的template.py引发了NotImplementedError

我错过了什么或这是一个错误吗?

啊,对不起,我太专注于丢失的块了。

您所描述的内容使用{% include %}不起作用,但使用{% module Template('t2.html', **args) %}为我工作,这将在其自己的命名空间中呈现模板。 模块设置由tornado.web.Application自动tornado.web.Application ,但不是您示例中的最小模板加载器。

由于{% extends %}标签的实现方式,这种限制似乎存在。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM