我在cakephp工作,我的/app/config/routes.php文件中有以下两行:
/**
* ...and setup admin routing
*/
Router::connect('/admin/:controller/:action/*', array('action' => null, 'prefix' => 'admin', 'admin' => true, 'layout' => 'admin' ));
/**
* ...and set the admin default page
*/
Router::connect('/admin', array('controller' => 'profiles', 'action' => 'index', 'admin' => true, 'layout' => 'admin'));
Run Code Online (Sandbox Code Playgroud)
我在/app/views/layouts/admin.ctp上也有一个布局
但是,当我访问管理URL时,布局不会更改
Mar*_*rko 30
创建一个app/app_controller.php
并将其放入:
<?php
class AppController extends Controller {
function beforeFilter() {
if (isset($this->params['prefix']) && $this->params['prefix'] == 'admin') {
$this->layout = 'admin';
}
}
}
Run Code Online (Sandbox Code Playgroud)
parent::beforeFilter();
如果您在其他控制器中使用它,请不要忘记调用控制器.
与问题半相关,您不需要定义路由,只需启用Routing.admin
config选项并将其设置admin
为app/config/core.php
.(CakePHP 1.2)