plone.app.registryに保存されているデータに依存するいくつかの登録をプログラムで行いたいと思っています。具体的には、オブジェクトの表示メニューにmenuItemsを追加したいと思います。これは通常、zcmlを介して行われます。
このような「ploneloaded」イベントへの「標準」アプローチとは何ですか?
私が検討したアプローチは次のとおりです。
- サイトルートでプレトラバーサルフックを使用し、登録を行ってから、再登録を防ぐために何らかの種類のマーカーを設定します
- zopeスタートアップイベント(zope.processlifetime.IProcessStartingなど)をリッスンしてから、ZODB内のすべてのPloneサイトを見つけて登録を実行します