首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建:zcml选项是什么?

构建:zcml选项是什么?
EN

Stack Overflow用户
提问于 2015-05-20 22:09:15
回答 2查看 109关注 0票数 4

在我的一个项目的buildout.cfg文件中,我有这样的内容:

代码语言:javascript
复制
[buildout]
...
zcml =
    my.package
    plone.reload
...

一切都很好,但我仍然不明白为什么有些包需要在这里列出,为什么其他包不需要。

它的目的是什么呢?

在做一些研究的时候,我最后使用了https://pypi.python.org/pypi/munin.zope/2.1,它说如果您使用z3c.autoinclude和plone (+3.3),您就不需要它了。

这是否意味着如果一个发行版在其z3c.autoinclude上有setup.py段塞,即

代码语言:javascript
复制
entry_points="""
# -*- Entry points: -*-
[z3c.autoinclude.plugin]
target = plone
""",

你不必关心buildout:zcml

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-21 02:39:54

除了定义的方便位置之外,构建部分中没有与zcml参数相关的固有功能。

通常,实例部分将引用它:

代码语言:javascript
复制
[instance]
recipe = plone.recipe.zope2instance
eggs = Plone
zcml = ${buildout:zcml}

is an anti-pattern, IMO

票数 5
EN

Stack Overflow用户

发布于 2015-06-07 22:02:04

在构建配置文件中,可以通过两种方式使用name=value

  • 为具有预定义功能的名称指定值
  • 若要将名称分配给值以避免复制和粘贴,请执行以下操作。

buildout:zcml是第二种情况的例子。

换句话说,使用buildout:zcml的唯一原因是需要在不同的地方使用它的价值。

但是,当我需要重用zcml时,我宁愿在plone.recipe.zope2instance部件中定义它。并在另一部分中重用这个值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30361239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档