Je dois toujours regarder ça aussi. La syntaxe est très simple, et or
ne fait pas partie de la syntaxe, j'en ai peur.
Comme vous pouvez le voir the documentation in the zope.configuration source code, la syntaxe est toujours de la forme verb arguments
, où verbe est l'un des have
, not-have
, installed
et not-installed
.
have
et not-have
test pour une fonctionnalité enregistrée. Une fonctionnalité enregistrée est simplement une chaîne opaque qui a été enregistrée avec une balise <meta:provides feature="something" />
. Utilisez-le pour signaler que quelque chose a été inclus sans l'attacher à une implémentation particulière. Exemple:
<configure zcml:condition="have apidoc">
<!-- only when the apidoc feature has been provided -->
</configure>
installed
et not-installed
simplement essayer d'importer le package nommé; si l'importation réussit, le test installed
le fait également. Exemple:
<configure zcml:condition="installed sqlalchemy">
<!-- only when the sqlalchemy module can be imported -->
</configure>
J'ai écrit un composant qui peut utiliser plusieurs implémentations d'une fonction de cryptage en fonction de ce qui est installé. Pour mon 'ou' je peux probablement mettre le même '' meta provides feature = "quelque chose"> 'dans deux blocs zcml: condition, puis enregistrer mon composant dans un tiers. Merci! – joeforker
Vos liens vers le code source Zope sont maintenant cassés – scarba05
@ scarba05: merci pour le heads-up, corrigé le lien. –