yii学习笔记(5),视图操作

在控制器调用$this->render()方法来输出视图

function actionLogin(){
    $name = "admin";
   // 加载视图
    return $this->render("login",["name"=>$name]);
}

第一个参数为视图名称,视图文件位置为views/控制器名称/视图文件

第二个参数是注入视图的模板变量(数组),在视图中将模板变量的键名为变量名调用

$this->render()方法会自动加载一个父模板,将指定视图内容添加到父模板的指定位置输出

如果不想加载父模板,可以调用$this->renderPartial()方法来加载模板

默认父模板文件为views/layouts/main.php

父模板中输出$content变量的位置就是控制器加载模板文件的添加位置

在实际需求中我们会自定义父模板

views/layouts目录下创建自定义父模板,如:views/layouts/admin.php

然后在控制器对应的控制器类中添加一个属性

// 指定自定义父模板
public $layout = "admin";

这样在这个控制器里调用$this->render()方法就会加载指定的父模板

 

视图文件之间是可以互相引用的

在a视图中引入b视图:

<?=$this->render("login",$host);?>
posted @ 2018-05-31 12:55  hl450  阅读(219)  评论(0)    收藏  举报