4
我有多个模板,包括对方,如:Mako模板:如何找到当前模板包含的模板的名称?
t1.html:
...
<%include file="t2.html" args="docTitle='blablabla'" />
...
t2.html:
<%page args="docTitle='Undefined'"/>
<title>${docTitle}</title>
...
我想要做的是确定t2包含在t1中(或另一个,所以我可以使用它的名字)。文档中描述的具体方式引起了我的注意,我可能已经通过了另一个参数(例如pagename ='foobar'),但它更像是一种黑客攻击。
有没有办法做到这一点,使用简单的.render(blabla)调用来呈现页面?
我不认为在Mako中有一种方法可以执行所需的内省(至少不是以任何干净的方式!)。 “显式比隐式更好”远非“黑客” - 它是**正常的**,**推荐的** Python方法 - 所以我只想用你正在努力避免的额外参数,根本不认为它是一个糟糕的解决方案。 – 2010-08-01 17:26:24
我正在使用的应用程序使用'rendertemplate(filename,...)'而不是'.render()'方法,所以我为该函数提供了一个包装器,将模板名称放入参数中。我想可能会为'render'方法做类似的事情。 – 2016-02-10 06:58:24