Ce que je dois faire est de personnaliser mon formulaire par défaut en ajoutant un champ 'passwordagain' et définir la valeur du nouveau champ égale au champ 'password'. Mon code:Comment définir la valeur par défaut pour un champ supplémentaire dans une forme symfony
class UserForm extends BaseUserForm
{
public function configure()
{
$this->widgetSchema['password'] = new sfWidgetFormInputPassword();
$this->widgetSchema['passwordagain'] = new sfWidgetFormInputPassword();
$this->validatorSchema['password'] = new sfValidatorString();
$this->validatorSchema['passwordagain'] = new sfValidatorString();
$this->getValidatorSchema()->setPostValidator(
new sfValidatorSchemaCompare(
'password',
sfValidatorSchemaCompare::EQUAL,
'passwordagain',
array(),
array('invalid' => 'Passwords don\'t match')
));
$this->setDefault('passwordagain', $this->getObject()->getPassword());
$this->useFields(array('username', 'password', 'passwordagain'));
}}
La méthode setDefault il ne semble pas fonctionner. Peut-être que cela ne fonctionne que pour les nouveaux utilisateurs, mais ce n'est pas ce que je cherche ici.
Merci, Radu.
P.S .: btw ... i utiliser symfony 1.4 Propel
Vous avez raison. Quand je pense plus à ce sujet, le mot de passe dans db est md5, donc il ne sera pas utile si je rends le champ avec cette valeur. Merci pour l'aide. –