Tant mieux Sinon, parfois il est plus simple de faire : $this->widgetSchema['contributor_id']->setOption('is_hidden', true);
Directement : on garde ainsi le paramétrage initial du champ en ne changeant que les options souhaitées. -----Message d'origine----- De : symfony-fr@googlegroups.com [mailto:symfony...@googlegroups.com] De la part de manuel brossard Envoyé : vendredi 26 novembre 2010 18:35 À : symfony-fr@googlegroups.com Objet : Re: [symfony-fr] comment rendre persistent la modification d' un module admin (backend) Eureka... il fallait juste surcharger les widgets et les validateurs pour que le tout soit lié et enregistré. $this->widgetSchema['contributor_id'] = new sfWidgetFormInputHidden(array('is_hidden' => 'true')); this->widgetSchema['invitation_id'] = new sfWidgetFormInputHidden this->(array('is_hidden' => 'true')); ....... 'contributor_id' => new sfValidatorInteger(array('required' => true)), 'invitation_id' => new sfValidatorInteger(array('required' => true)), Merci Lelio pour la piste des accesseurs... ça va me permettre d' en abusé maintenant.. Le 25 novembre 2010 17:33, manuel brossard <mbross...@infonel.net> a écrit : J' ai modifié mes champs dans mon schéma j' ai à présent à 0 quand j' enregistre au lieu de null... Le 24 novembre 2010 23:15, manuel brossard <mbross...@infonel.net> a écrit : J' ai modifié le passage de l' objet dans le form , ça ne change rien ,et mon test sur le save est positif. Tous mes champs sont bien enregistrés sauf les 3 ids.... qui sont a NULL. Au prochain rebuild j' ajouterai les notes null... effectivement.. Le 24 novembre 2010 22:55, Lélio ML <mailing-l...@lelio.fr> a écrit : Essaie peut-être avec ça : en supprimant l'objet passé dans le form de l'action create. Mais ça ne devrait rien changé... public function executeCreate(sfWebRequest $request) { $this->form = new EvaluationForm(); $this->processForm($request, $this->form); $this->setTemplate('new'); } Et sinon, essaie aussi de mettre dans un else du if portant sur le $form->isValid() avec un $this->getUser()->setFlash('error', '...'); Histoire de voir si le formulaire est ok ou non. Sinon, tu peux aussi vérifier quelles sont les données POST passée réellement par la requête HTTP. De même, d'un point de vue intégrité des données, as-tu placé des notnull: true dans tes champs de lien s'ils sont obligatoires ? Ça évitera des enregistrements partiels ou faux... -----Message d'origine----- De : symfony-fr@googlegroups.com [mailto:symfony...@googlegroups.com] De la part de manuel brossard Envoyé : mercredi 24 novembre 2010 18:17 À : symfony-fr@googlegroups.com Objet : Re: [symfony-fr] comment rendre persistent la modification d' un module admin (backend) Le 24 novembre 2010 18:10, Lélio ML <mailing-l...@lelio.fr> a écrit : Ça c'est dans l'action initiale mais pas celle qui enregistre ton formulaire. N'est-ce pas ? Dans l'action executeCreate(), tu fais comment ? Un bind() puis un validate() et enfin un save() ? En fait au début j' avais oublié de passer dans l' action créate mais même en ajoutant cela ne change rien.. . Voici le code : public function executeCreate(sfWebRequest $request) { $this->form = new EvaluationForm($this->evaluation); $this->processForm($request, $this->form); $this->setTemplate('new'); } protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind( $request->getParameter($form->getName()) ); if ($form->isValid()) { $evaluation = $form->save(); $this->getUser()->setFlash('notice', 'Commentaire enregistr !'); $this->redirect('evaluation_show', $form); } } } -----Message d'origine----- De : symfony-fr@googlegroups.com [mailto:symfony...@googlegroups.com] De la part de manuel brossard Envoyé : mercredi 24 novembre 2010 18:03 À : symfony-fr@googlegroups.com Objet : Re: [symfony-fr] comment rendre persistent la modification d' un module admin (backend) Yes voici la séquence complète : $this->evaluation = new Evaluation(); $this->evaluation->setCustomerId(2); $this->evaluation->setContributorId(1); $this->evaluation->setInvitationId(3); $this->form = new EvaluationForm($this->evaluation); -- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. Pour envoyer un message à ce groupe, adressez un e-mail à symfony...@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com <mailto:symfony-fr%2bunsubscr...@googlegroups.com> <mailto:symfony-fr%2bunsubscr...@googlegroups.com <mailto:symfony-fr%252bunsubscr...@googlegroups.com> > . Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr -- Cordialement, Manuel Brossard Twitter: twitter.com/infonel Skype : mantex2039 Tel: + 33 9 72 17 00 41 -- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. Pour envoyer un message à ce groupe, adressez un e-mail à symfony...@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com <mailto:symfony-fr%2bunsubscr...@googlegroups.com> . 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 à symfony...@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com <mailto:symfony-fr%2bunsubscr...@googlegroups.com> . Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr -- Cordialement, Manuel Brossard Twitter: twitter.com/infonel Skype : mantex2039 Tel: + 33 9 72 17 00 41 -- Cordialement, Manuel Brossard Twitter: twitter.com/infonel Skype : mantex2039 Tel: + 33 9 72 17 00 41 -- Cordialement, Manuel Brossard Twitter: twitter.com/infonel Skype : mantex2039 Tel: + 33 9 72 17 00 41 -- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. Pour envoyer un message à ce groupe, adressez un e-mail à symfony...@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com. 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 à symfony...@googlegroups.com. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse symfony-fr+unsubscr...@googlegroups.com. Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr