0
我不能在我的beforeSave()方法刪除蛋糕的新版本,但它與早期的版本庫的工作(如2.2版本)無法從beforeSave方法刪除行2.4 +
有誰知道如何得到它再次工作而不改變蛋糕庫?
代碼:
public function beforeSave($options = array()) {
if(!empty($this->data['Attachment']['delete']) && (int) $this->data['Attachment']['delete'] === 1) {
if($this->deleteFromDb((int) $this->data['Attachment']['id'])) {
$this->data['Attachment'] = array();
return true;
} else {
return false;
}
}
return true;
}
public function deleteFromDb($id) {
if ($this->delete($id)) {
return true;
} else {
return false;
}
}
下面一行返回false,但我不明白爲什麼:
if($this->deleteFromDb((int) $this->data['Attachment']['id']))
如果我用下面替換它仍然返回false:
if($this->delete((int) $this->data['Attachment']['id']))
如果我從控制器訪問該方法,它將返回true,例如
$this->Model->deleteFromDb($id);
任何幫助都會很好。
我有同樣的問題,但我認爲把它放在'beforeValidate'不是真的正確,我真的想要刪除這些行,即使其他數據無效? – 2015-11-09 09:51:13