2013-05-21 66 views
0

我有一個行爲,更新的紀錄,而不是從beforeDelete回調刪除。停止回調傳播

public function beforeDelete(Model $model, $cascade = true) { 
    [...] 

    return true; 
} 

當我回到true,刪除proccess繼續而不是停止。我不想停止傳播下一個事件delete

我已閱讀關於stopPropagation()函數CakeEvent但不知道該怎麼做,以及如何正確使用行爲。你可以幫我嗎?

回答

0

the CakePHP core libraries help page摘自:

public function beforeDelete(Model $model, $cascade = true,$event) { 
    [...] 

    $event->stopPropogation(); 
} 

應該這樣做。

+0

行爲延伸'ModelBehavior',其中有隻有兩個參數定義的回調。我會嘗試'$ model-> getEventManager()'..謝謝! –

0

如果要停止刪除,你應該返回beforeDelete ()回調而不是返回真正。 檢查the documentation

,如果你想刪除繼續這個函數應該返回true,如果你想中止錯誤。

所以,你的代碼應該是這樣的:

public function beforeDelete(Model $model, $cascade = true) { 
    [...] 

    return false; 
}