我的默认布局是default.thtml中,但我想用另外的布局默认scaffolds.ctp只对脚手架的意见,当我在控制器使用方法:脚手架
public $scaffold;
我试图在AppController
public function beforeScaffold() {
$this->layout = 'default-scaffolds';
}
但没有奏效。
我感谢任何帮助。
我的默认布局是default.thtml中,但我想用另外的布局默认scaffolds.ctp只对脚手架的意见,当我在控制器使用方法:脚手架
public $scaffold;
我试图在AppController
public function beforeScaffold() {
$this->layout = 'default-scaffolds';
}
但没有奏效。
我感谢任何帮助。
添加此beforeRender()
public function beforeRender() {
if (in_array($this->request->action, array('index', 'add', 'view', 'edit'))) {
$this->layout = 'default-scaffolds';
}
}
我只是面临同样的问题,并通过指定路由前缀“管理员”,我加在控制器和AppController的设立
public $scaffold = 'admin';
解决它到beforeFilter()方法
public function beforeFilter() {
if ($this->request->prefix == 'admin') {
$this->layout = 'scaffold';
}
}
或者,在lib/Cake/Controll ER/Scaffold.php,符合377(的_scaffold(CakeRequest $request)
功能全,在此,如果:if (in_array($request->params['action'], $this->scaffoldActions))
,只需添加以下行:
$this->layout = 'default_scaffold'; // this is a custom-added line in order to activate the default CSS file when scaffolding
并添加default_scaffold.ctp到您的布局文件夹。
只有在动作(索引,添加,查看,编辑)存在以及存在视图时才适用于我。但我想要的是与 public $ scaffold一起使用它; – mart