saveAll Cascade (Anuncio-> Veiculo-> Moto) - PullRequest
0 голосов
/ 27 марта 2012

Моя проблема заключается в следующем:

Я пытаюсь сохранить следующие объекты:

Anuncio
    Veiculo
        Moto

Но когда я использую saveAll только Anuncio и Veiculo сохранены, Moto игнорируется.

Что нужно сделать, чтобы сохранить велосипед.

Примечание: Veiculo.php hasOne = Carro, Moto, Nautica, CaminhoesOnibus.

Для более подробной информации: https://gist.github.com/2209394

Отладка (сохранение): https://gist.github.com/2209399

1 Ответ

1 голос
/ 27 марта 2012

saveAll() - это функция-обёртка для saveMany() и saveAssociated().

Попробуйте вместо этого использовать saveAssociated() с параметром deep, установленным в значение true.

$model->saveAssociated($data, array('deep' => true)); Это необходимо, потому что одна из ваших моделей не связана напрямую с моделью, на которой вы выполняете сохранение (по-видимому).

http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-saveassociated-array-data-null-array-options-array

...