Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonsoir,
Je souhauterai avoir un formulaire commun pour l'ajout et la modification d'un utilisateur. Ca eviterai d'avoir 2 view similaire.
J'a donc crée 2 action addAction() et editAction() pour leur vue respective j'appelle donc avec $this->partial() le formulaire. Mais voilà ca devient compliquer, pour le préremplissage ou lors du submit des informations si il y a une erreur.
Donc comment faites vous pour gérer ce genre de situation ?
En vous remerciant d'avance
Hors ligne
J'ai le même formulaire pour l'ajout, la modification et le détail (idem que modification sauf que les champs ne sont pas éditable). Le code de mes vues pour les actions ajout/modif/detail est
<?php echo $this->formulaire; ?>
Le truc c'est que j'ai un template de formulaire et tous mes formulaires héritent de ce formulaire. Dans ce template j'ai les fonctions disableElement() et enableElement() qui récupèrent tous les éléments du formulaire et rend chaque élement activé/désactivé. Par conséquent, si je suis en modification/ajout j'appelle $formulaire->enableElement() ou $formulaire->disableElement().
Idem, j'ai des entêtes de formulaires pour afficher les boutons suivant les cas : ajouter/modifier/appliquer/detail qui sont définis aussi dans le template de formulaire. Du coup, j'arrive à gérer mes formulaires très simplement.
Bon là je viens de te dire en gros comment je fais, mais dedans c'est plus compliqué. Quoi qu'il en soit, le principe reste le même : un formulaire parent qui hérite de Zend_Form et tous les formulaires enfants qui héritent du formulaire parent.
Hors ligne
Il y a un ptit problème, c'est que je n'utilise pas Zend_Form.
Et je ne vpis âs du tout comment faire.
Hors ligne
chez moi addAction prépare un objet avec les valeur par défaut positionne la variable méthode à add et fait un redirect sur showformAction la méthode editAction va chercher l'objet à éditer dans la base et positionne la variable méthode à update et elle aussi redirige vers showfromAction
la méthode shoformAction affiche l'objet qu'on lui a donné
lorsque l'utilisateur valide le formulaire il arrive sur l'action checkformAction qui vérifie le formulaire et enchaîne sur l'action saveAction qui elle en fonction de la variable méthode fait un insert ou un update
chaque action ne fait donc un minimum de chose bien précis. je peux ainsi arriver sur une méthode showFormAction depuis l'endroit où je veux il suffit pour cela d'avoir mis l'objet à afficher et la méthode d'enregistrement.
le processus général est clairement défini mais si pour des besoins particulier je dois recâbler cette séquence je ne change que quelques redirection et non pas le code de l'application.
A+JYT
Hors ligne
Ok merci sekaijin
J'ai crée aussi un objet.
Hors ligne