Merci Lélio,
j'ai trouvé une autre solution,
avant la validation du formulaire, on peut modifier un champ comme
ceci :

$size= $file->getSize();
$this->form->getObject()->setSize($size);
//setSize() est l'accesseur pour mon champ size en base.
$fichier = $form->save();



On 22 oct, 14:31, Lélio ML <[email protected]> wrote:
> Justement, utilise le doUpdateObject(). Cela est le bon endroit (à mon avis)
> pour faire ce que tu souhaites faire.
>
> -----Message d'origine-----
> De : [email protected] [mailto:[email protected]] De la
> part de jimpass
> Envoyé : vendredi 22 octobre 2010 14:19
> À : Symfony-fr
> Objet : [symfony-fr] Re: surcharge de la méthode save
>
> Merci Lélio, mais c'est bien dans un formulaire en fait.
>
> On 22 oct, 14:13, Lélio ML <[email protected]> wrote:> Pardon, si c'est 
> dans un formulaire...
>
> > -----Message d'origine-----
> > De : [email protected] [mailto:[email protected]]
> > De la part de Lélio ML Envoyé : vendredi 22 octobre 2010 14:12 À :
> > [email protected] Objet : RE: [symfony-fr] surcharge de la
> > méthode save
>
> > Si c'est dans un document, tu peux passer par la méthode
> > doUpdateObject() qui a la responsabilité de fournir les données du
>
> formulaire à l'objet.
>
>
>
>
>
> > -----Message d'origine-----
> > De : [email protected] [mailto:[email protected]]
> > De la part de jimpass Envoyé : vendredi 22 octobre 2010 13:58 À :
> > Symfony-fr Objet
> > : [symfony-fr] surcharge de la méthode save
>
> > Bonjour,
> > J'ai créé un champ "size" dans mon modèle pour la gestion de fichiers.
> > Je souhaiterais donc renseigner ce champ automatiquement en
> > surchargeant la méthode save() j'ai donc dans mon action cette ligne :
> >   $size= $file->getSize();
> > Pas de problème, la taille du fichier est récupérée.
>
> > Voici ma méthode save() surchargée :
> >    public function save(Doctrine_Connection $conn = null)
> >   {
> >     if ($this->isNew())
> >     {
> >       $this->setSize($size);
> >     }
>
> >     return parent::save($conn);
> >   }
> >  J'ai testé pas mal d'options, en changeant le type du champ en base
> > (string, int etc...) , mais rien à faire, la valeur n'est pas intégrée
> > en base et je ne sais pas ou je commets l'erreur...
>
> > --
> > 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
>
> --
> 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 à