2

GenericSetup と 1 つの XML ファイルを使用してブラウザー レイヤーを登録できることはわかっていますが、プログラムで作成する必要があります。

これは可能ですか?

4

1 に答える 1

7

どうぞ:

>>> from plone.browserlayer.tests.interfaces import IMyProductLayer
>>> from plone.browserlayer import utils
>>> IMyProductLayer in utils.registered_layers()
False

>>> utils.register_layer(IMyProductLayer, name='my.product')
>>> IMyProductLayer in utils.registered_layers()
True

https://github.com/plone/plone.browserlayer/blob/master/plone/browserlayer/README.rstからコピー

テスト リクエストにブラウザ レイヤーを含めるだけの場合は、ZCA を使用して、ブラウザ レイヤー インターフェイスをテスト リクエストに直接提供できます。

from zope.interface import directlyProvides
from my.product.interfaces import IMyProductBrowserLayer
directlyProvides(self.request, IMyProductBrowserLayer)
于 2015-05-21T15:22:00.020 に答える