2012-04-09 2 views
1

Been на этот в течение нескольких часов и не могу понять, почему это происходит, любая помощь ценится ...SaveAll не экономия связанных hasOne данных

У меня есть две модели - Изображения & Ссылки.

Изображение hasOne Ссылка

Ссылки belongsTo Изображений

Я кладу вместе данные в следующем формате в вар под названием $images

Array 
(
    Array 
    (
     [Image] => Array 
      (
       [timestamp] => ... 
       [full] => ... 
      ) 

     [Link] => Array 
      (
       [loc] => ... 
       [lastmod] => ... 
      ) 

    ) 
    ... 
) 

Затем вызов $this->Image->saveAll($images, array('deep'=>true));

Это экономит изображение модель, но она не сохраняет модель Link.

В обратном вызове beforeSave для модели изображения данные в данных $ this-> передаются соответствующим образом. Но в обратном вызове afterSave появляется модель Link - НО ее поля пусты.

Данные не сохраняются в MySQL для данных Link, только данные изображения.

Я что-то упустил? Been через документы в миллион раз :(

+0

Не могли бы вы разместить свои '$ hasOne' и' $ belongsTo' в своих моделях? –

ответ

2

Я чувствую любопытное глупо отвечать на это, но здесь идет.

Я использовал некоторые отладки кода в afterSave() для Image модели.

После распечатки данные, а что нет, я назвал exit().

я не обращал внимания на то, что, после сохранения Image, CakePHP не собирался добраться до Link модели данных, чтобы сохранить это.

0_0

Смежные вопросы