Чтобы передать переменную в логин, я использую:
$this->render('login', array('model' => $model));
Но мне также нужно получить доступ к этой переменной в части шаблона footer.php:
Я пытаюсь это:
$this->render('footer', array('model' => $model));
Но когда в footer.php я пытаюсь получить доступ к переменной, я получаю сообщение об ошибке «неопределенная переменная»
Что случилось ?
Шаблоны в yii получают данные от контроллера $this
ссылка.
<?php
SomeController extends Controller {
public $something;
public function init() {
$this->something = 'qwerty';
}
public function actionA() {
$this->render('view', array('model' => $model));
}
}
В шаблоне:
<?php echo $this->something; ?>
Пожалуйста, посмотрите на шаблоны по умолчанию yii. Breadcrimbs отображаются с использованием свойства из контроллера, так что это, вероятно, лучший способ достичь этого.
Вы можете использовать класс контроллера для передачи переменных в шаблон представления, например
Контроллер:
SomeController extends Controller {
public function actionIndex() {
$var1 = 'abc';
$var2 = '123';
$this->render('view',
array('var1' => $var1,
'var2' => $var2,
));
}
}
В файле шаблона представления вы можете получить доступ к этим 2 переменным ($ var1 & $ var2) со своим именем:
echo $var1;
echo $var2
Структура MVC не перенаправить прямую страницу.
Вы создаете первое действие нижнего колонтитула и после перенаправления на страницу.
Вы видите демонстрационное действие входа в систему в site_controller.php
следить за этим