我的默認佈局是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