我正在研究用PHP编写并使用Yii框架的现有项目 .
我想创建一个全新的布局 . 在视图/布局下,我创建了一个名为bootstrap.php的文件,并使用我想用于所有页面的标准模板填充它 . 我把我希望内容放在布局之间的行 .
在控制器中,在渲染视图之前,我调用:
$this->layout = "//layouts/bootstrap";
我希望这会强制布局使用我的新布局,但它总是恢复到main.php布局 .
如果我也改变了这个不存在的布局$ this-> layout =“// layouts / bootstrapxx”;
它将使页面呈现空白布局(只是将内容直接输出到浏览器) . 这向我指出Yii检测到我的新布局的位置,但它仍然渲染旧的布局 .
如果有人可以帮我弄清楚如何将布局设置为新布局,那将非常感激 .
谢谢
1 回答
应相对于布局路径引用Yii布局(默认为
protected/views/layouts
),其中getter和setter分别由getLayoutPath()和setLayoutPath()确定 .因此,要使代码正常工作,请参阅
bootstrap
not,//layouts/bootstrap
布局的应用程序在CControler::render()中处理