正在读取https://pypi.python.org/pypi/five.pt/2.2.1
To enable Chameleon, configure the package using ZCML:
<include package="five.pt" />变色龙模板是按包启用还是全局启用?指令有点稀疏。
如果我只想为一个特定的包启用Chameleon,这是可能的吗?(使迁移到Chameleon变得更容易)
发布于 2013-05-11 23:14:47
直接从PyPI page for the package报价
它使用现有
(特别是
TALInterpreter和PageTemplate类)上的猴子补丁来工作。简单地说,补丁所做的就是替换TAL解释器类,并确保所谓的“烹饪”例程使用变色龙解析器和编译器,而不是zope.*引用实现。
因此,当您加载five.pt包时,常规页面模板代码会被打上补丁,以便在模板被烹调(编译)时使用Chameleon模板。
这真的排除了在一个包一个包的基础上启用变色龙和禁用变色龙。一旦任何软件包使用<include package="five.pt" />指令,就会加载five.pt configure.zcml文件并应用修补程序。
也就是说,从理论上讲,应该可以将每个包的启用或禁用添加回补丁中;必须告诉five.pt Program utility的__call__和cook方法如何检测模板应用于哪个包,并决定使用哪个RepeatDict类和页面模板对象。
https://stackoverflow.com/questions/16393813
复制相似问题