ZCMLはフォームzcml:conditionの有効な条件は何ですか?
<configure zcml:condition="installed some.python.package">
(conditional configuration directives)
</configure>
condition
のための表現の構文は何の条件付きのディレクティブを含めることができますか? 'または'は許可されていますか?
ZCMLはフォームzcml:conditionの有効な条件は何ですか?
<configure zcml:condition="installed some.python.package">
(conditional configuration directives)
</configure>
condition
のための表現の構文は何の条件付きのディレクティブを含めることができますか? 'または'は許可されていますか?
私はいつもこれも見なければなりません。構文は非常に単純で、or
は構文の一部ではありません。私は恐れています。
あなたがthe documentation in the zope.configuration source codeからわかるように、構文は動詞がhave
の1、not-have
、installed
とnot-installed
あるフォームverb arguments
、常にあります。
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
のテストも行います。例:
私は、インストールされている暗号機能の複数の実装を使用できるコンポーネントを作成しました。私のために、おそらく2つのzcml:conditionブロックに同じ ''を置き、私のコンポーネントを3番目に登録することができます。ありがとう! – joeforker
Zopeのソースコードへのリンクが壊れました – scarba05
@ scarba05:ヘッドアップのおかげでリンクが修正されました。 –