父模板的自动编译

2024-06-10 13:52:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试设置Cheetah模板的动态编译,这对开发很有用(因此我不必在每次更改之后用cheetah compile重新编译它们)。似乎Cheetah.Template.Template是合适的API,但它不能处理父模板。在

如果我有:

 -- __init__.py
 -- index.tmpl:
    #extends layout.A
 -- layout/
          -- __init__.py
          -- A.tmpl:
          #echo 'Hello!'

如果我在根目录下运行Python,我将得到下一个:

^{pr2}$

如果我用cheetah compile编译A.tmpl,错误将消失,但模板中的更改不会影响index.tmpl编译的结果:

$ cat layout/A.tmpl
#echo 'Hello, world!'

$ python
>>> from Cheetah.Template import Template; t = Template(file='index.tmpl')
>>> str(t)
'Hello!'

我是否应该自己重新编译所有的父模板(例如,Aquariumframework会这样做)?在

猎豹2.4版。

任何关于Django1.3\Cheetah集成的提示也将受到欢迎。在


Tags: pyecho模板apihelloindexinit动态
1条回答
网友
1楼 · 发布于 2024-06-10 13:52:45

一些在流程启动早期的地方,包括以下两行:

import Cheetah.ImportHooks 
Cheetah.ImportHooks.install() 

我相信这会给你你想要的行为。在

这在主文档中没有记录,但是tavisrudd在回答关于Cheetah mailing list的类似问题时建议这样做。在

相关问题 更多 >