slt je ne me souvient plus comment on récupérer les valeur des table.
ma table se nome "collection". J'ai essayer un foreach mes rien affaire.
Merci de votre indulgence .
Version imprimable
slt je ne me souvient plus comment on récupérer les valeur des table.
ma table se nome "collection". J'ai essayer un foreach mes rien affaire.
Merci de votre indulgence .
Salut,
J'ai l'impression que le titre de ton sujet et ton problème sont quelque peu différents. Si j'ai bien compris tu veux accéder à des valeurs que tu récupères en base de données, puis tu veux les afficher et les mettre en forme dans ton _list.php, à savoir ta vue.
Donc la première étape est de récupérer ces valeurs dans le contrôleur de ton module "collection" je présume (actions.class.php) à l'aide de la requête de ton choix. Tu vas stocker ce résultat dans une variable $collection.
Une fois que tu les as dans le contrôleur, pour les passer à la vue, cette ligne suffit :
Maintenant, tu peux accéder à cette liste dans ton _list.php en utilisant $collection.Code:$this->collection = $collection;
Bien entendu, tout ça doit se trouver dans le même module.
Il faudrait un peu plus de détails si cela ne suffit pas à régler ton problème.
Un petit détour par là pourrait te rafraichir la mémoire également : http://www.symfony-project.org/jobee...Doctrine/fr/04
pour tous dire j'ai essayer de passe avec :en suite dan ma vuCode:
1
2
3
4
5
6
7 function executeIndex(){ $this->collection= Doctrine::getTable('Collection') ->createQuery('a') ->execute(); } }
j'ai meme essayé de mettre dans la class collection.class.phpCode:
1
2
3
4
5
6 <?php foreach ($collection as $c): ?> <?php echo $c->getTitle();?> <?php endforeach ?>
la vueCode:
1
2
3
4
5 function getAll(){ $q = Doctrine_Query::create() ->from('collection') ->execute(); return $q;}
mes rien a faireCode:
1
2
3
4
5
6 <?php foreach ($collection->getAll() as $e => $c): ?> <?php echo $c->getTitle();?> <?php endforeach ?>
Vérifie dans un premier temps que tu as bien récupéré ta collection dans ton contrôleur. Fais ton foreach dans le contrôleur et affiche quelque chose ("plop") pour chaque élément parcouru.
Ensuite essaye voir ça :
s'il t'affiche des plop, tu récupères une collection d'éléments.Code:
1
2
3
4
5
6
7
8
9 $q = Doctrine_Query::create() ->from('collection'); $collection = $q->execute(); foreach($collection as $c) { echo "plop"; }
Seulement ensuite tu vérifies que ça ne vient pas d'un problème avec tes accesseurs : je vois que tu as essayé plusieurs techniques ($collection->getAll()->getTitle ou parfois juste $collection->getTitle) : une fois que tu es sûr d'avoir une collection non vide, tu testes avec tes accesseurs.
Et une fois que ta boucle affiche tes données dans le contrôleur alors tu passes ta collection à la vue via un :
Si tu partages ton schema.yml ce sera aussi plus simple, si le problème vient des méthodes de ton objet.Code:$this->collection = $collection;