9

Buildout からの構成情報を Plone 製品に含めるにはどうすればよいですか?

私が取り組んでいるplone製品の1つは、ファイルシステムとの間で情報を読み書きします。現在、卵の名前空間内 (たとえば plone/product/directory 内) でそれを行っていますが、それは私にはまったく正しくないようです。

アイデアは、iw.fss や iw.recipe.fss と同じように、構成可能なパスにその情報を格納する場所を構成することです。

たとえば、その情報を ${buildout:directory}/var/mydata に保存します。

4

1 に答える 1

17

plone.recipe.zope2instance部分のzope-conf-additionalセクションを介して、構成セクションをzope.confファイルに追加できます。

[instance]
recipe = plone.recipe.zope2instance
...
zope-conf-additional =
   <product-config foobar>
       spam eggs
   </product-config>

名前付きのproduct-configセクションは、それを探しているPython製品の簡単な辞書として利用できます。上記の例では、「spam」:「eggs」マッピングを使用したdictである「foobar」エントリを作成します。次に、コードからアクセスする方法を次に示します。

from App.config import getConfiguration
config = getConfiguration()
configuration = config.product_config.get('foobar', dict())
spamvalue = configuration.get('spam')
于 2011-05-26T22:29:29.870 に答える