Comment passer des param de contrôleur pour la mise en page dans YII2
Je veux envoyer un paramètre à partir d'un contrôleur de mise en page (c'est à dire main.php). Mais je ne suis pas en mesure d'obtenir les param dans main.php
J'ai essayé:
Contrôleur De Code:
$this->render('index',array('param' => $paramValue));
Et c'est ainsi que j'ai été à essayer d'obtenir ce dans la mise en page ie. main.php
$this->param
(comme dans yii 1)$param
Mais je ne suis pas en mesure d'obtenir param valeur dans la mise en page. Quelqu'un peut me dire comment faire cela?
- yiiframework.com/doc-2.0/... vous shoulld relire le manuel et regardez
->beginContent()
méthode.
Vous devez vous connecter pour publier un commentaire.
yii\base\View a spécial $params propriété.
Par exemple, il est utilisé pour la construction de la chapelure en défaut généré CRUD modèles de code avec Gii.
Vous pouvez le configurer comme ceci avant de rendu:
À l'intérieur d'un contrôleur, vous pouvez le configurer comme ceci:
Elle sera disponible dans les points de vue (y compris la page principale):
Vous pouvez également le trouver dans guide officiel.
appelant directement $param u devrait obtenir la valeur, essayez de
C'est parce que vous êtes rendu
index.php
vue, pas lemain.php
un.Et
$param
c'est comment vous l'obtenez à partir de la version 1.1.UPD: Si vous voulez un param dans votre
main.php
mise en page de le déclarer dans votreController
classe, et alors vous serez en mesure de l'obtenir$this->param
de cette façon.UPD2: il Semble bien que dans la version 2.0, vous devez déclarer param dans un yii\web\Vue de classe. Et d'y accéder via
Yii::$app->view->param
.Je voudrais vous suggérer quelques étapes pour résoudre ce problème.
Vérifier les paramètre et S'il existe ensuite de l'utiliser.