Bonjour à tous,
je voudrais mettre dans un fieldset trois éléments de mon formulaire. Mon formulaire est lui-même déjà dans un fieldset et il s'affiche de manière très simple: il s'agit d'une liste à puces, une puce pour chaque élément de mon formulaire.
Le code du fichier form_create.phtml est:
et le code de la classe Application_Form_CreateDomain, extension de Zend_Form est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <form method="<?php echo $this->escape($this->element->getMethod()) ?>" id="myform"> <fieldset> <legend>Créer un client</legend><ul> <?php foreach($this->element as $element):?> <li><?php echo $this->formLabel($element->getName(),$element->getLabel()) ?> <?php echo $this->{$element->helper}( $element->getName(), $element->getValue(), $element->getAttribs(), (method_exists($element,'getMultiOptions')) ? $element->getMultiOptions() : '' ) ?></li> <?php endforeach; ?></ul> <p><input type="submit" id='submit' value="Envoyer" /></p> </fieldset> </form>
Et j'obtiens le message:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <?php require_once 'Zend/Form.php'; require_once '/EText.php'; class Application_Form_CreateClient extends Zend_Form { public function add_els($type){ $els=array(); $els[] = new Model_Form_EText("Code_Client", 'Code client'); //société $els_company=array(); $els_company[] = new Model_Form_EText("other",'Si autre'); $els_company[] = new Model_Form_EText("Siren",'Siren'); $els_company[] = new Model_Form_EText("trademark",'Marque'); $this->addDisplayGroup($els_company, 'Société'); $this->setDisplayGroupDecorators(array( 'FormElements', 'Fieldset' )); } $this->addElements ( $els ); $this->setDecorators( array( array('ViewScript', array('viewScript' => 'client/form_create.phtml')))); } }
Warning: Exception caught by form: Method getLabel does not exist
Je n'ai pas le message d'erreur si je commente les lignes addDisplayGroup et setDisplayGroupDecorators, j'ai essayé de suivre le tutoriel http://framework.zend.com/manual/fr/...orm.forms.html pour comprendre mon erreur, mais sans succès.
Il y a quelque chose au niveau de la mise en place des display group qui m'échappe.
Si quelqu'un voulait bien m'indiquer la voie à suivre...
merci d'avance
schwarzy2
Partager