Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je suis actuellement en train de tester ZF et Doctrine 1.2. Jusque là pas de soucis.
Dans un vue, je souhaite afficher une liste de Tickets avec le libellé de la catégorie Associée.
Le code (de test) ci dessous fonctionne très bien dans la vue :
<ul> <?php n foreach ($this->tickets as $ticket) { echo "<li>" . $ticket->ArCategories->libelle . "</li>"; } ?> </ul>
par contre il ne marche plus si j'utilise le helper partialLoop
// index.phtml <ul> <?php $this->partialLoop ( '/tickets/partials/_tickets-rows.phtml', $this->tickets );?> </ul> // _tickets-rows.phtml <li'><?php echo $this->ArCategories->libelle)?></li>
Normal, la documentation sur l'aide de vue partial dit
si un objet est fourni et qu'il possède une méthode toArray(), le résultat de toArray() sera assigné à la vue comme variable de vue.
.
On peut à priori paramétrer la propriétée objectKey pour forcer le passage de l'objet. Mais je ne vois pas ou et comme amlgré avoir lu la doc.
Si quelqu'un l'à déjà fait merci d'avance.
EB
Dernière modification par ManuB (15-02-2010 15:03:31)
Hors ligne
il suffisait de faire faire comme dit dans la doc.
$view->partialLoop()->setObjectKey('object');
Mais ce qui n'est pas dit ou pas explicitement (ou je suis idiot c'est possible aussi), c'est qu'il faut utiliser la clé passée à l'aide de vue pour accéder à l'objet.
// /tickets/index.phtml $this->partialLoop()->setObjectKey('object'); echo $this->partialLoop ( '/tickets/partials/_tickets-rows.phtml', $this->tickets ); // /tickets/partials/_tickets-rows.phtml <tr> <td><?php echo $this->object->id?></td> <td><?php echo $this->object->cdate?></td> <td><?php echo $this->object->ArCategories->libelle?></td> <td><a href="/tickets/view/id/<?php echo $this->object->id?>"><?php echo $this->object->objet?></a></td> </tr>
EB
Hors ligne