ZCML可包括以下形式的条件指令
<configure zcml:condition="installed some.python.package">
(conditional configuration directives)
</configure>
什么是对表达式语法condition
? 是“或”允许吗?
ZCML可包括以下形式的条件指令
<configure zcml:condition="installed some.python.package">
(conditional configuration directives)
</configure>
什么是对表达式语法condition
? 是“或”允许吗?
我一直有看这件事了。 语法很简单, or
是不是语法的一部分,我很害怕。
正如你可以看到从在zope.configuration源代码文件 ,语法是永远的形式verb arguments
,其中动词是一个have
, not-have
, installed
和not-installed
。
have
和not-have
试验的注册功能。 已注册的特征仅仅是已注册用一个不透明的字符串<meta:provides feature="something" />
标记。 它使用的东西已被列入没有它捆绑到特定的实现标志。 例:
<configure zcml:condition="have apidoc">
<!-- only when the apidoc feature has been provided -->
</configure>
installed
和not-installed
简单尝试导入指定的包; 如果导入成功,所以做了installed
测试。 例:
<configure zcml:condition="installed sqlalchemy">
<!-- only when the sqlalchemy module can be imported -->
</configure>