2012-04-09 3 views
1

an diesem ein assoziiertes Ersparnis für ein paar Stunden und kann nicht herausfinden, warum dies geschieht, jede mögliche Unterstützung geschätzt ...SaveAll nicht hasOne Daten

Ich habe zwei Modelle - Bilder & Verbindungen.

Bilder hasOne Weblinks

Verbindungen belongsTo Bilder

Ich bin zusammen Daten in folgendem Format in eine var $images

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

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

    ) 
    ... 
) 

Dann $this->Image->saveAll($images, array('deep'=>true)); Aufruf

Das spart genannt setzt das Bild Modell, aber das Link-Modell wird nicht gespeichert.

In beforeSave Callback für das Image-Modell werden die Daten in $ this-> data entsprechend übergeben. Aber im afterSave-Callback wird das Link-Modell angezeigt - aber die Felder sind leer.

In den Daten von MySQL werden keine Daten gespeichert, nur die Bilddaten.

Fehle ich etwas? Sie ist bereits durch die docs einer Million Mal :(

+0

Könnten Sie Ihre '$ hasOne' und' $oquensTo' in Ihren Modellen posten? –

Antwort

2

Ich fühle mich ein bisschen dumm diese zu beantworten, aber hier geht es.

Ich war in afterSave() für das Image Modell einig Debug-Code.

Nach dem Ausdrucken Daten und was nicht, rief ich exit().

ich war blind gegenüber der Tatsache, dass nach Image speichern CakePHP wurde in Gang zu bringen, um das Link Modell in den Daten nicht zu speichern.

0_0

Verwandte Themen