Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je butte sur une problématique :
Est-il possible d'avoir un layout dans un layout?
En détails ce que j'aimerai c'est disposer d'un layout global pour toute l'appli et avoir un layout par controller ou module.
Le layout controller/module afficherai le contenu de chaque action (avec leur contenu commun) et le layout afficherai le contenu de ce layout + le contenu commun à toute l'appli.
Merci pour vos réponse.
Hors ligne
Bonjour,
Tu travaille sur quel Zf ? le 2 ou le 1 ? car tu as posté ton message dans le forum pour Zend Framework 1.
Ensuite :
Ton layout global : c'est le layout que tu trouve dans ton module Application.
Tu peux avoir un layout différent pour un module s'il change du modul global en utilisant https://github.com/EvanDotPro/EdpModuleLayouts
Ensuite, je pense que tu veux utiliser les view helper (des bout de vue commun a plusieurs modules) dans ce cas je te renvoie ici :
http://framework.zend.com/manual/curren … rtial.html
J'espère t'avoir aiguiller sur ton problème
Hors ligne
Bonjour,
Merci pour votre réponse.
Je travail sur le ZF1.
Désolé je me suis mal exprimé. Je vais tâcher d'être plus clair.
J'ai déjà un layout global à l'application. Il se situe dans le dossier "application/layout".
Maintenant voici mon problème :
Dans un contôleur j'ai plusieurs vues qui partagent un "template commun".
Ce que je voudrais c'est avoir (si c'est possible bien sûr) un layout qui représenterait le template commun pour ce contrôleur tout en gardant le layout global sans utiliser l'aide de vue partial (c'est à dire éviter la duplication de code dans chaque vue).
Voici un exemple en image :
--Le layout application
-- Le layout controller
Hors ligne
PS : le template de controller serait injecté dans le layout global
Merci pour vos réponse.
Dernière modification par Ali Kent (27-03-2015 11:59:36)
Hors ligne
Alors je connais mal le zf1, mais d'après ce que je comprend, tu peux par exemple créer un deuxième layout dans ton application/layout.
Et faire ceci dans ton controlleur
$this->_helper->_layout->setLayout('/path/to/your/other-layout') //other-layout.phtml
ou la meme chose mais dans ta vue
<?php $this->layout()->setLayout('other-layout'); ?>
Attention tu peux avoir des soucis au niveaux des chemins, testes bien
Hors ligne
Bonjour,
Désolé mais ce n'ai toujours pas le comportement que je souhaite. Je n'ai peut être pas choisi les bons termes.
Connaissez vous le systèmes des poupées russes. Je voudrais a peu près le même système en zf1.
1 layout qui inclut un autre layout si besoin et ainsi de suite. (Désolé pour l'image).
Merci
Hors ligne
Bonjour,
Je ne suis pas sur, mais à mon avis tu cherches soit l'action view helper, soit le partial view helper. Pour le premier, tu associe le process à ton morceau de vue, alors que pour le second c'est juste du HTML et tu lui passes des valeurs venant de ton controlleur "principal".
Hors ligne