我想阻止在Plone中刪除文件夾類型的實例,除非父節點文件夾被刪除。我有一個預感,事件處理程序可以防止刪除(引發綁定到標記接口的IObjectRemovedEvent
處理程序中的異常),但實現此規則的例外似乎更難以固定:我想允許刪除項目,當其父項文件夾正在被刪除。防止刪除Plone中的文件夾(類型),除非父節點被刪除
我最初的預感是我可以遍歷__parent__
指針並檢查是否在父元素(或某個遠程間接容器)上設置了一個屬性,但是我不知道如何在刪除時設置此屬性在試圖刪除所包含的孩子之前(否則不允許刪除)。所以現在,我在質疑我是否以正確的方式接近這一點?我誤解了在Plone中刪除對象的問題限制嗎?我應該看plone.app.linkintegrity來源借用技巧?
我的用例:「項目」文件夾中的「設置文件夾」 - 本質上,除非項目文件夾本身被刪除,否則絕不允許刪除設置文件夾。我想我正在尋求一種非常具體的遏制關係的參照完整性。
你會如何防止刪除一個對象,除非它被刪除的情況下,直接導致它的父對象被刪除?
你可以重新設計你的情況下,爲了使「設置」成爲「項目」的圖式。它不是那樣工作嗎? – tcurvelo