Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
je rencontre un petit problème lorsque je veux insérer une nouvelle ligne dans une table.
Cette ligne est créé avec la méthode createRow(), et je la rempli ensuite avec des données récupérées d'une feuille Excel.
Lorsque je fais le save() sur la ligne, j'obtiens l'erreur suivante :
Cannot refresh row as parent is missing
Voici mon code :
$badge = $TBadge->createRow(); $badge->bad_OrtId = $TOp->getIdByName($data->sheets[0]['cells'][$i][1]); $badge->bad_SousTraitantId = $TSt->getIdByName($data->sheets[0]['cells'][$i][2]); $badge->bad_Dept = $data->sheets[0]['cells'][$i][4]; ... $badge->save();
Cette erreur peut-elle venir des types de données récupérées sur la feuille Excel, pourtant j'ai bien les bons formats lorsque je fais un dump de l'objet $badge.
Merci d'avance pour votre aide.
Dernière modification par Godzinho (18-02-2010 14:14:50)
Hors ligne
Hello,
Tu as un auto-increment ou un déclencheur en post-insert qui modifie la clé primaire.
@+
Hors ligne
Je suis en auto-increment.
Hors ligne
Hello,
Essayes de suivre l'exemple de la doc (même si c'est théoriquement non nécessaire) : http://framework.zend.com/manual/fr/zen … t.key-auto
@+
Hors ligne
Par rapport à la doc, mon code est correct pour mon modèle.
J'ai réussi à résoudre le problème, mais ma solution n'est pas terrible.
J'ai réécris la méthode insert dans mon modèle et du coup je fais un insert(...) à la place d'un save().
J'ai quelques soucis de dates, mais je pense que cela vient du fichier Excel, même en la convertissant au format anglais.
Hors ligne
Pages: 1