Есть ли какой-либо метод в Kohana 3.2 ORM для каскада delete.I я новичок в kohana, поэтому любой может мне помочь в этом вопросе?Kohana ORM cascade delete
2
A
ответ
2
Боюсь, что в Кохане нет. Если вам действительно нужно, вы должны применять его на уровне базы данных (ON DELETE CASCADE)
1
лавинных удалений, переопределить метод delete()
в модели:
class Model_Alpha extends ORM
{
protected $_has_many = array(
'beta' => array(
'model' => 'beta',
'foreign_key' => 'alpha_id',
),
'gamma' => array(
'model' => 'gamma',
'foreign_key' => 'alpha_id',
),
);
function delete()
{
foreach($this->beta->find_all() as $entry)
$entry->delete();
foreach($this->gamma->find_all() as $entry)
$entry->delete();
parent::delete();
}
}
Вы можете затем каскад дополнительно путем переопределения метода delete()
на моделях, которые вы удаляете.