Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour, voilà j'étends Zend_Form pour générer mes formulaires et je dois, pour un champs select, aller chercher une liste d'information dans ma bd. J'utilise une facade pour accéder à mes données, et je me demandais s'il était préférable d'ajouter les options(provenant de la bd) du champs select dans ma classe étendu de Zend_Form ou dans mon contrôleur?
Dernière modification par 3uclide (11-03-2009 06:08:47)
Hors ligne
Pour ma part, je le fais dans le contrôleur, le formulaire ne doit pas contenir l'accès au données.
Hors ligne
Charge une instance de ton modèle, "fetche la" et insere les données, non?
Hors ligne
Moi je crée une classe Myform et dans la classe je fais la récupération des données dans la classe form
$famille = new Zend_Form_Element_Select('famille'); $famille->setLabel('Famille') ->addMultiOption('','') ->setRequired(true) ->addFilter('StripTags'); $familles = new tbFamilles(); $liste = $familles->fetchAll($familles->select()->order('famille')); foreach ($liste as $familles): $famille->addMultiOption(trim($familles->famille),trim($familles->famille)); endforeach;
Une autre méthode est donnée par l'exemple suivant http://codeutopia.net/blog/2009/03/09/d … -elements/
Solution 3
Tu récupères tes données dans un le contrôleur en faisant appel au modèle. Tu les mets dans un tableau et puis tu les passes en paramètres lorsque tu instancies ta form
$data = myModel->fetchdata(); $form = new Myform(array('OptionsSelect'=>$data))
Hors ligne
Pages: 1