Création de plans (layouts) avancés

1. Gestion des modèles Plan:modèle

En fonction des cas d’utilisation, il peut être pratique de disposer de templates (modèles) communs à plusieurs contrôleurs. Ces modèles peuvent se placer après ou avant le layout du contrôleur.

Exemple de cas concret

Un site d’e-commerce propose deux facettes du site :

  • des clients qui veulent acheter des produits ;

  • des vendeurs qui proposent leurs produits.

Ces deux typologies provoquent des interfaces différentes en fonction de l’utilisateur. Cependant, une partie des contrôleurs servent une partie de la population et une autre partie les vendeurs. Ceci engendre deux groupes de layouts : un pour le client, et un pour le vendeur.

Usage

Pour ajouter ces modèles communs à plusieurs contrôleurs, il faut les créer dans le répertoire app/views/layouts/.

Après les avoir créés, il faut les définir dans les contrôleurs ciblés.

Syntaxe d’ajout d’un template

public function initialize() 
{ 
  $this->view->setTemplateAfter('<nom du layout>'); 
  $this->view->setTemplateBefore('<nom du layout>'); 
} 

En suivant l’ordre d’affichage présenté dans la section précédente, la fonction setTemplateAfter permet de placer le layout choisi après celui du layout du contrôleur. Avec...

couv_EPPHALC.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Gestion de l’internationalisation
Suivant
Affichage de différents niveaux de rendu