Il vaut mieux utliser la méthode doSave. De plus si tes relations sont bien
déclarées et tes objets identifiés dans la config du formulaires, symfony te
fera la sauvegarde correctement.
Alexandre Baron




Le 24 mars 2011 09:32, Cyril FLIELLER <[email protected]> a écrit :

> Je n'arrive pas à comprendre comme sauvegarder les données d'un formulaire
> dans la database avec doctrine. Mon formulaire ne contient pas que les
> informations d'une seule table, mais de plusieurs, je dois donc traiter mes
> données afin de créer les (4) enregistrements :
>
> public function save($con = null){
>     try{
>       // ajout agent
>       $curAgent = new CcPerson();
>       $curAgent->setFirstname($this->values['firstname'])
>               ->setLastname($this->values['lastname'])
>               ->setGender($this->values['gender'])
>               ->setEmail($this->values['email'])
>               ->setArrivaldate($this->values['arrivaldate'])
>               ->setDeparturedate($this->values['departuredate'])
>               ->save($con);
>
>       $curAgentId = $curAgent->getId();
>
>       // member group
>       foreach($this->values['membergroup_list'] as $curGroupId){
>         $curMG = new CcMemberGroup();
>         $curMG->setPersonId($curAgentId);
>         $curMG->setGroupId($curGroupId);
>         $curMG->save($con);
>         unset($curMG);
>       }
>
>       // solde congé
>       $congesCredit = new CcCredit();
>       $congesCredit->setYear($this->values['exerciceConges'])
>         ->setValue($this->values['creditConges'])
>         ->setPersonId($curAgentId)
>         ->setAbsencetypeId(1)
>         ->setCcomment("Arrivée au laboratoire")
>         ->setCreatedAt(date('Y'))
>         ->save($con);
>
>       // solde fractionnement
>       $fracCredit = new CcCredit();
>       $fracCredit->setYear($this->values['exerciceFractionnement'])
>         ->setValue($this->values['creditFractionnement'])
>         ->setPersonId($curAgentId)
>         ->setAbsencetypeId(2)
>         ->setCcomment("Arrivée au laboratoire")
>         ->setCreatedAt()
>         ->save($con);
>
>       $con->commit();
>     }
>     catch (Exception $e){
>       $con->rollBack();
>       throw $e;
>     }
>
>     return $curAgent;
>   }
>
> Mais j'ai des erreurs !
>
>
> *Cyril FLIELLER*
>
>  --
> Vous recevez ce message, car vous êtes abonné au groupe Google
> Groupes Symfony-fr.
> Pour envoyer un message à ce groupe, adressez un e-mail à
> [email protected].
> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
> [email protected].
> Pour plus d'options, consultez la page de ce groupe :
> http://groups.google.com/group/symfony-fr?hl=fr
>

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google 
Groupes Symfony-fr.
Pour envoyer un message à ce groupe, adressez un e-mail 
à [email protected].
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse 
[email protected].
Pour plus d'options, consultez la page de ce groupe : 
http://groups.google.com/group/symfony-fr?hl=fr

Répondre à