Eh bé je crois que cela fonctionne mais en ajoutant ceci dans la classe
Consultant.class.php
public function getPasswordModify()
{
return null;
}
public function setPasswordModify($password)
{
$this->setPassword($password);
return $this;
// ne marche que parce que setPassword et défini dans l'objet
// si non le code eusse dû être :
// $this->_set('password', $password);
}
Par contre le champs password ne doit pas être obligatoire.
Sinon je ne peux mettre à jour mon user.
Autre chose, j 'ai une fonction qui envoie le login/pass par e-mail une fois
l' objet sauvé, j'aimerai distinguer la création de l' update comment faire
?
Voici actuellement ma fonction
protected function processForm(sfWebRequest $request, sfForm $form)
try {
$customer = $form->save();
$this->sendNotifybymail();
Le 25 février 2011 09:33, <[email protected]> a écrit :
> remplaces sfGuardUserForm par sfGuardUserAdminForm dans la classe
> BaseConsultantForm et essayes
>
>
>
> Dans l' action new oui mais pas en effet pas d' action edit.
>
> Pourtant les templates sont tous auto-générés.
>
> Le 25 février 2011 09:24, <[email protected]> a écrit :
>
>> Dans ton formulaire, as tu le champs password_again ?
>>
>>
>>
>> ???
>>
>> Le 25 février 2011 09:15, <[email protected]> a écrit :
>>
>>> que ton montage n'herite pas de cette classe
>>>
>>>
>>>
>>> et tu en déduis ?
>>>
>>> Le 24 février 2011 17:58, <[email protected]> a écrit :
>>>
>>>> Si tu peux modifier la fiche alors que le mot de passe n'est pas
>>>> saisi, c'est que tu ne passes pas par :
>>>>
>>>> $this->mergePostValidator(new sfValidatorSchemaCompare('password',
>>>> sfValidatorSchemaCompare::EQUAL, 'password_again', array(), array('invalid'
>>>> => __('The two passwords must be the same.'))));
>>>>
>>>> qui est dans la classe sfGuardUserAdminForm du plugin sfguard
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Quel méthode parles tu ?
>>>>
>>>>
>>>>
>>>> Le 24 février 2011 17:44, <[email protected]> a écrit :
>>>>
>>>>> J'ai déjà eu ce problème, j'ai solutionné le probleme en dupliquant les
>>>>> méthodes du plugin dans la nouvelle table crée.
>>>>>
>>>>>
>>>>> -----Message d'origine-----
>>>>> De : [email protected] [mailto:[email protected]]
>>>>> De la
>>>>> part de [email protected]
>>>>> Envoyé : jeudi 24 février 2011 17:35
>>>>> À : [email protected]
>>>>> Objet : Re: [symfony-fr] Re: pb formulaire classe etendu de sfguarduser
>>>>>
>>>>> En fait, en résumant tu as créé un model qui herite de sfguard et tu
>>>>> ne
>>>>> n'hérite pas des methodes du plugin sfguard ?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Dsl je developpe sous 'vi' ! lol Avec Gedit dans les grands
>>>>> jours :
>>>>>
>>>>>
>>>>> abstract class BaseConsultantForm extends sfGuardUserForm {
>>>>> protected function setupInheritance()
>>>>> {
>>>>> parent::setupInheritance();
>>>>>
>>>>> $this->widgetSchema->setNameFormat('consultant[%s]');
>>>>> }
>>>>>
>>>>> public function getModelName()
>>>>> {
>>>>> return 'Consultant';
>>>>> }
>>>>>
>>>>> }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Le 24 février 2011 17:22, Lélio ML <[email protected]> a écrit :
>>>>>
>>>>>
>>>>> Ok et BaseConsultatForm hérite de quoi ?
>>>>>
>>>>> Je pense que c'est là qu'il faut voir. Dans la chaine de
>>>>> l'héritage.
>>>>> Si tu
>>>>> développes sous Eclipse, il y a la vue "Type Hierarchy" qui te
>>>>> sera
>>>>> très
>>>>> utile (raccourci F4).
>>>>>
>>>>>
>>>>>
>>>>> -----Message d'origine-----
>>>>> De : [email protected]
>>>>> [mailto:[email protected]] De la
>>>>>
>>>>> part de manuel brossard
>>>>> Envoyé : jeudi 24 février 2011 17:16
>>>>> À : [email protected]
>>>>> Objet : Re: [symfony-fr] Re: pb formulaire classe etendu de
>>>>> sfguarduser
>>>>>
>>>>>
>>>>> Ben j' ai par exemple.
>>>>>
>>>>> Tout mes forms sont autogénérés.
>>>>>
>>>>> Cela donne par exemple..
>>>>>
>>>>> class ConsultantForm extends BaseConsultantForm {
>>>>> /**
>>>>> * @see sfGuardUserForm
>>>>> */
>>>>> public function configure()
>>>>> {
>>>>> parent::configure();
>>>>> unset(
>>>>> $this['consultant_id'], $this['is_super_admin' ],
>>>>> $this['id'],
>>>>> $this['is_active'], $this['groups_list']
>>>>>
>>>>> );
>>>>>
>>>>>
>>>>> $this->setValidators(array(
>>>>> 'first_name' => new sfValidatorString(array('required' =>
>>>>> true)),
>>>>> 'last_name' => new sfValidatorString(array('required' =>
>>>>> true)),
>>>>> 'username' => new sfValidatorString(array('required' =>
>>>>> true)),
>>>>> 'email_address' => new sfValidatorEmail(array('required'
>>>>> =>
>>>>> true)),
>>>>> 'password' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'company' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'address1' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'postcode' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'tel' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'city' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'mobile' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'function' => new sfValidatorString(array('required' =>
>>>>> true)),
>>>>> 'groups_list' => new sfValidatorString(array('required' =>
>>>>> false)),
>>>>> 'permissions_list' => new
>>>>> sfValidatorString(array('required' =>
>>>>> true)),
>>>>>
>>>>> ));
>>>>>
>>>>>
>>>>> $this->widgetSchema->setLabels(array(
>>>>> 'permissions_list' => 'Permissions',
>>>>> ));
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Le 24 février 2011 16:58, Lélio ML <[email protected]> a
>>>>> écrit :
>>>>>
>>>>>
>>>>> Bonjour
>>>>>
>>>>> Est-ce que tes formulaires héritent bien de
>>>>> sfGuardUserAminForm ?
>>>>> Dans ce formulaire, la gestion du mot de passe vide est
>>>>> implémenté.
>>>>>
>>>>> -----Message d'origine-----
>>>>> De : [email protected]
>>>>> [mailto:[email protected]] De la
>>>>> part de mantex
>>>>> Envoyé : jeudi 24 février 2011 16:49
>>>>> À : Symfony-fr
>>>>> Objet : [symfony-fr] Re: pb formulaire classe etendu de
>>>>> sfguarduser
>>>>>
>>>>>
>>>>> Bonjour tout le monde !
>>>>>
>>>>> Personne a une idée sur mon pb qui est ultra classique.
>>>>>
>>>>> En gros tout ceux qui utiliserai sfguardPlugins 5.0 dans
>>>>> une
>>>>> appli
>>>>> en
>>>>> ajoutant des champs (adresse postale, tel.. ) par
>>>>> agrégation
>>>>> seront
>>>>> confrontés au même problème que moi potentiellement.
>>>>>
>>>>> Pb type : je met à jour la fiche d' un client , même si
>>>>> je ne
>>>>> vais
>>>>> pas
>>>>> modifier son mot de passe il sera mise à jour sans que le
>>>>> client le
>>>>> sache,
>>>>> ce qui n' est pas vraiment très propre.
>>>>>
>>>>> Faut il renoncer a sfguard juste pour un champs de
>>>>> formulaire
>>>>> ?
>>>>> Passer 3 mois sur ce type de problème ne semble non plus
>>>>> pas
>>>>> tellement
>>>>> envisageable.
>>>>>
>>>>> Si quelqu'un' un a idée de génie !
>>>>>
>>>>>
>>>>> On 26 jan, 16:37, mantex <[email protected]> wrote:
>>>>> > Bonjour,
>>>>> >
>>>>> > J' ai un soucil avec le champs mot de passe d' un form
>>>>> d'
>>>>> un
>>>>> module
>>>>> > backend.
>>>>> >
>>>>> > Je m' explique:
>>>>> >
>>>>> > J' ai hérité sfguardUser par aggrégation 2 modèles.
>>>>> >
>>>>> > 1 modèle consultant
>>>>> > 1 module client
>>>>> >
>>>>> > Pour chaque modèle j' ai un module backend (admin
>>>>> generator)
>>>>> >
>>>>> > Dans leformulaire"edit" il me rappel le mot de passe
>>>>> crypté dans
>>>>> le
>>>>> > champs duformulaire. Ce qui a pour effet de générer un
>>>>> nouveau mot
>>>>> de
>>>>> > passe même si on ne modifie pas ce champs lors de la
>>>>> validation de
>>>>> ceformulaire..
>>>>> >
>>>>> > Ce comportement est étrange car je n' ai pas ce
>>>>> problème
>>>>> quand je
>>>>> > manipule sfguardUser directement.
>>>>> >
>>>>> > J' ai tenté de désactiver ce champs dans la fonction
>>>>> configure()
>>>>> mais
>>>>> > dans ce cas, malgré que le mot de passe n' est pas mis
>>>>> à
>>>>> jour dans
>>>>> la
>>>>> > base, je ne peux plus me logger.
>>>>> >
>>>>> > Je ne comprends pas tout la. .
>>>>>
>>>>> --
>>>>> 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]
>>>>> <mailto:symfony-fr%[email protected]>
>>>>>
>>>>> <mailto:symfony-fr%[email protected]
>>>>> <mailto:symfony-fr%[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]
>>>>> <mailto:symfony-fr%[email protected]>
>>>>>
>>>>> <mailto:symfony-fr%[email protected]
>>>>> <mailto:symfony-fr%[email protected]> > .
>>>>>
>>>>> 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 à
>>>>> [email protected].
>>>>> Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
>>>>> [email protected]
>>>>> <mailto:symfony-fr%[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]
>>>>> <mailto:symfony-fr%[email protected]> .
>>>>> 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 à
>>>>> [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
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> 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 à
>>>> [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
>>>>
>>>
>>>
>>>
>>> --
>>> 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 à
>>> [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
>>>
>>
>>
>>
>> --
>> 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 à
>> [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
>>
>
>
>
> --
> 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 à
> [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
>
--
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
à [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