Frage

ZCML können bedingte Richtlinien des Formulars enthalten

<configure zcml:condition="installed some.python.package">
    (conditional configuration directives)
</configure>

Was ist der Ausdruck Syntax für condition? Ist 'oder' erlaubt?

War es hilfreich?

Lösung

Ich habe immer diese auch nach oben zu schauen. Die Syntax ist sehr einfach, und or ist nicht Teil der Syntax, ich habe Angst.

Wie Sie sehen können von die Dokumentation in der zope.configuration Quellcode , die Syntax ist immer von der Form verb arguments, wo verb eines von have, not-have, installed und not-installed.

have und not-have Test für eine registrierte Funktion. Eine registrierte Funktion ist einfach eine undurchsichtige Zeichenfolge, die mit einem <meta:provides feature="something" /> Tag registriert wurden. Verwenden Sie es, zu kennzeichnen, dass etwas ohne Bindung an einen bestimmten Implementierung einbezogen. Beispiel:

<configure zcml:condition="have apidoc">
    <!-- only when the apidoc feature has been provided -->
</configure>

installed und not-installed einfach versuchen, den Namen versehenes Paket zu importieren; wenn der Import gelingt so auch den installed Test. Beispiel:

<configure zcml:condition="installed sqlalchemy"> 
    <!-- only when the sqlalchemy module can be imported -->
</configure>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top