在我的一个项目中' buildout.cfg文件我有这样的东西:
[buildout]
...
zcml =
my.package
plone.reload
...
一切正常但我仍然对某些包裹在这里需要列出的原因以及其他人为什么不这样做感到困惑。
它的目的是什么?
在进行一些研究时,我最终在https://pypi.python.org/pypi/munin.zope/2.1上说如果你使用z3c.autoinclude和plone(+3.3)你不需要它。
这是否意味着如果分发在其setup.py
上有z3c.autoinclude slug,即
entry_points="""
# -*- Entry points: -*-
[z3c.autoinclude.plugin]
target = plone
""",
你不必关心buildout:zcml
?
答案 0 :(得分:5)
与[buildout]部分中的[instance]
recipe = plone.recipe.zope2instance
eggs = Plone
zcml = ${buildout:zcml}
参数相关的没有固有功能,而不是定义*.php?page=%20%209999%20%20
的方便位置。
通常,[instance]部分会引用它:
*.php?page= 9999
The use of buildout:zcml
similar to buildout:eggs
is an anti-pattern, IMO
答案 1 :(得分:1)
在buildout配置文件中,System.out
可以通过两种方式使用:
name=value
是第二种情况的一个例子。
换句话说,使用buildout:zcml
的唯一原因是需要在不同的地方使用它的价值。
但是,当我需要重用buildout:zcml
时,我宁愿在zcml
部分中定义它。并在另一部分重用该值。