Maison  >  Article  >  cadre php  >  L'implémentation Yii ne charge pas le fichier de mise en page

L'implémentation Yii ne charge pas le fichier de mise en page

王林
王林original
2019-12-24 14:00:532519parcourir

L'implémentation Yii ne charge pas le fichier de mise en page

Le framework Yii affichera la mise en page par défaut lors du rendu des modèles. Le projet nouvellement créé contient également 3 mises en page par défaut : main.php, column1.php, column2.php et la mise en page par défaut. Un contrôleur public Controller.php (dans le répertoire des composants) est créé. Le SiteController.php par défaut hérite de ce Controller.php. Ce contrôleur spécifie le fichier de mise en page comme column1.php.

Tout d'abord, examinons les étapes requises pour restituer un modèle :

1 Utilisez $this->render('index') dans le contrôleur pour commencer le rendu de la vue index.php. file;

2. Lors du rendu de l'index, analysez d'abord le script php dans index.php, puis enregistrez le résultat analysé dans la variable $content

3. layout est un fichier spécifié, recherchez d'abord l'attribut

du contrôleur si cette valeur n'est pas vide, alors $this->layout rend le fichier de layout et utilise la valeur render() comme variable dans le fichier de layout, c'est-à-dire use $content peut afficher le contenu analysé dans index.php, et cette mise en page est spécifiée comme b8cb21d4be6121876b9b5e4bbf1ecc1f par défaut dans Controller Dans cette mise en page, le fichier de mise en page par défaut du projet main.php est imbriqué. column1.php

4. Si le contrôleur ne spécifie pas l'attribut de mise en page, il recherchera l'attribut de mise en page dans la configuration du projet, qui est l'attribut de mise en page dans

. Cet attribut n'a pas besoin d'être spécifié manuellement. La valeur par défaut est main.php document. Analysez ce fichier de mise en page via views/layouts/main.php et insérez le contenu de index.php en tant que variable $content. render

En d'autres termes, par défaut, nous devons restituer trois fichiers pour restituer une vue, à savoir

, index.php et column1.php. main.php

Pour les personnes qui ne sont pas habituées au mode mise en page, cela augmentera sans aucun doute les ennuis.

Méthode de fermeture :

Mais désactiver le mode de mise en page est très simple. Vous pouvez définir l'attribut

dans Controller sur layout. false

Les exemples sont les suivants :

SiteController extends Controller{
 public $layout=false; //重写这个属性就可以了
//其他方法
}

Articles et tutoriels connexes recommandés :

tutoriel yii

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn