Effectivement, la surcharge de ma méthode bindAndSave est la meilleure
solution à mes yeux.
Grand merci à tous pour vos réponses ;o)
Voici la classe après modification.
class EmployeeForm extends BaseEmployeeForm
{
public function configure()
{
unset(
$this['cn']
);
$this->validatorSchema['cn'] = new sfValidatorString();
...
}
public function bindAndSave(Array $tainted_values = null, Array
$tainted_files = null)
{
$tainted_values['cn'] = $tainted_values['givenname'] . " " .
$tainted_values['sn'];
$this->bind($tainted_values, $tainted_files);
if ($this->isValid())
{
$this->object->save();
return true;
}
return false;
}
...
}
On 19 nov, 15:23, Jason Nivoliez <[email protected]> wrote:
> Lélio ML a écrit :> Il vaut mieux surcharger la méthode sfForm::doSave() je
> crois
>
> apres verification sur ce que j'avais fait quand j'ai été confronté au
> probleme,
> c'est la methode processForm que j'avais modifié, mais c'est aussi
> parce que j'avais d'autres choses a y modifier
> en tout cas dans mon processForm(), je fais un setMavariable() juste
> avant le save() et ça marche au poil
>
> protected function processForm(sfWebRequest $request, sfForm $form)
> {
> $form->bind($request->getParameter($form->getName()),
> $request->getFiles($form->getName()));
> if ($form->isValid())
> {
> $notice = $form->getObject()->isNew() ? 'The item was created
> successfully. you can now add pictures and link you item to categories'
> : 'The item was updated successfully. ';
>
> $item = $form->getObject()->setMavariable($mavariable);
>
> $item = $form->save();
> ....
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr"
de Google Groupes.
Pour transmettre des messages à ce groupe, envoyez un e-mail à
l'adresse [email protected]
Pour résilier votre abonnement à ce groupe, envoyez un e-mail à
l'adresse [email protected]
Pour afficher d'autres options, visitez ce groupe à l'adresse
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---