Zend db cascade удалить несколько уровней - PullRequest
0 голосов
/ 01 октября 2010

Как заставить Zend Db cascade удалить несколько уровней иерархии? Например:

дилеры -> продукты -> атрибуты

удаление одного дилера должно идти до атрибутов, а теперь это не так: (

Есть мысли?

1 Ответ

1 голос
/ 08 октября 2010

В строке Zend_Table_Abstract внутри функции _cascadeDelete строка строится так:

$rowsAffected += $this->delete($where);

Вместо этого он должен быть построен примерно так:

$toDelete = $this->fetchAll($where);  
foreach($toDelete as $row) {  
    $rowsAffected += $row->delete();  
}  

Подробнее здесь . Это сработало для меня по одной причине, но нужно проверить больше.

...