php - 在 CakePHP 中更改管理布局

标签 php cakephp

我在 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'));

我在/app/views/layouts/admin.ctp 也有一个布局

但是,当我访问管理 URL 时布局没有改变

最佳答案

创建一个 app/app_controller.php 并将其放入:

<?php
class AppController extends Controller {

    function beforeFilter() {
        if (isset($this->params['prefix']) && $this->params['prefix'] == 'admin') {
            $this->layout = 'admin';
        } 
    }

}

如果您在其他 Controller 中使用它,请不要忘记在您的 Controller 中调用 parent::beforeFilter();

与问题半相关,您不需要定义路由,您只需要启用 Routing.admin 配置选项并将其设置为 adminapp/config/core.php。 (CakePHP 1.2)

关于php - 在 CakePHP 中更改管理布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4180655/

相关文章:

php - 如何在同一个查询中查询 'group by' 查询的结果

php - 尝试创建表时无法修复 mysql 中的语法错误

CakePHP Auth 手动登录

cakephp - 使用 HABTM 在 CakePHP 中分页

php - 我怎样才能拥有 HasAndBelongsToMany 表的外键并仍然在 CakePHP 中执行有效的查找查询?

php - 循环遍历 php 表不起作用 [给出警告 : mysql_fetch_assoc() expects parameter 1 to be resource, bool 值]

PHP preg_replace 正则表达式问题

javascript - 修复源代码中损坏的链接

.htaccess - 如何禁用单个文件夹的 CakePHP 重写路由,以便它可以用作第二个应用程序的位置?

php - cakephp 从另一个表中检索数据到 Controller 中