1
看起來,模型鉤beforeDelete不工作層次結構。 讓我來舉例說明。如何刪除atk4中的子/記錄?
class Model_User extends Model_Table{
public $table='user';
function init(){
parent::init();
$this->debug();
$this->addField('name');
$this->hasMany('Item');
$this->addHook('beforeDelete',$this);
}
function beforeDelete($m){
$m->ref('Item')->deleteAll();
}
}
class Model_Item extends Model_Table{
public $table='item';
function init(){
parent::init();
$this->debug();
$this->addField('name');
$this->hasOne('User');
$this->hasMany('Details');
$this->addHook('beforeDelete',$this);
}
function beforeDelete($m){
$m->ref('Details')->deleteAll();
}
}
class Model_Details extends Model_Table{
public $table='details';
function init(){
parent::init();
$this->debug();
$this->addField('name');
$this->hasOne('Item');
}
}
當我打電話刪除()在「大父母」 Model_User,然後它會嘗試刪除所有記錄項如預期,但是從那裏不執行Item.beforeDelete鉤不要刪除詳細記錄在嘗試刪除Item之前。
我在做什麼錯了?
弗雷德我仍然在4.1,所以無法添加任何東西。可能是4.2中的一個錯誤,它不會級聯刪除,但羅馬人應該能夠驗證。 – 2012-08-09 13:20:20