Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour à tous. (j'espère que je serai claire...)
Je travail présentement sur la conception d'un site web à 3 colonnes dynamiques. C'est à dire que dans chacune des colonnes on peut afficher dynamiquement 1 à plusieurs "blocs" un en dessous de l'autre. Chacun des blocs est indépendants des autres.
Lors de mon affichage, je veux pouvoir afficher les "blocs" sous forme d'objet afin que je puisse faire des actions directement avec chacun d'eux (ex: suppression d'un bloc).
J'ai tenté de faire l'affichage avec le "actionstack". Puisque le "actionstack" s'exécute à la fin, l'affichage des blocs ne s'effectue pas au bon endroit...
Je suis bien embêté...
Il y a t'il un moyen de spécifier l'endroit d'affichage d'un "actionstack"?
Ex : Col1, Col2, Col3
La solution se trouvent t'elle dans l'appel de layouts dans des layouts ?
J'attends avec impatience vos pistes de solutions.
Hors ligne
Je viens de voir que je peux utiliser "$this->action". Je vais regarder sur ce côté là.
Hors ligne
Bonjour,
Regarde du côté du helper d'action "viewRenderer".
Il te permet d'enregistrer le rendu de la vue associée à l'action dans un segment de la "réponse" que tu nommes toi-même
Exemple :
$this->_helper->viewRenderer->setResponseSegment('col1_bloc1');
Peu importe l'ordre dans lequel les actions sont exécutées, au final la "réponse" contiendra l'ensemble des segments nommés.
Dans ton layout (le fichier phtml correspondant à ton layout), il te suffit de replacer le rendu de chaque vue dans l'ordre voulu
Exemple :
<?php
echo $this->layout()->col1_bloc1;
echo $this->layout()->col1_bloc2;
...
echo $this->layout()->col2_bloc1;
echo $this->layout()->col2_bloc2;
...
echo $this->layout()->col3_bloc1;
echo $this->layout()->col3_bloc2;
...
?>
$this->layout()->xxx affiche le contenu du segment "xxx"
En espérant avoir compris ton problème ... :-)
Philippe
Hors ligne