我有mynamespace.myproduct
和mynamespace.myproduct2
。是否可以「覆蓋」產品的工作流程?
mynamespace.myproduct2
被定義爲mynamespace.myproduct
的metadata.xml
的依賴關係。 mynamespace.myproduct2
有一些我想重寫的工作流程,而不必自定義mynamespace.myproduct2
作爲一個整體。
我知道我可以使用portal_workflow
在ZMI改變它,但我需要保持這些變化,在這兩種情況下,當mynamespace.myproduct
和mynamespace.myproduct2
在portal_quickinstaller
重新安裝。
工作流將具有相同的名稱,但我自定義的工作流將具有不同的狀態,並且我需要mynamespace.myproduct
來覆蓋mynamespace.myproduct2
的工作流程。總結:我需要從產品中更改工作流程(保留內容類型等),但不想自定義整個軟件包。
我想了解overrides.zcml(example),但是這完全覆蓋了配置文件,我只是想重寫工作流程(甚至不知道這種方法是否工作,添加此文件將始終使用原始配置文件?我如何正確測試它?)。而根據plone community guide:ZCML和GenericSetup ZCML變化之間
注意差異影響在裏面Zope的所有站點,而GenericSetup XML文件 隻影響一個Plone站點及其數據庫 加載Python代碼。 GenericSetup XML 文件始終是數據庫更改。 ZCML和 網站特定行爲之間的關係通常使用圖層來完成。 ZCML指令 (如視圖和視圖)僅在使用圖層屬性時才被註冊爲在某個 圖層上處於活動狀態。當GenericSetup XML通過portal_setup導入 ,或者產品附加安裝程序爲 Plone站點運行時,該層僅針對特定站點激活, 激活爲該層註冊的所有視圖。
我不希望這會影響所有Plone網站,只有一個。
所以,這是可能的/可行的,還是我將不得不做一個叉和編輯從原始工作流的xml文件工作?
但是,如果我安裝'mynamespace.myproduct2'(依賴),它將「覆蓋覆蓋」。我如何避免這種情況? –
您不能......只需重新安裝您的產品,並將覆蓋作爲最後一個 –