我正在使用cakephp 2.3.8,我想为我的主页创建自定义内容。我无法从Pages Controller到home.ctp视图获取任何内容
在我的页面控制器中,我创建了一个家庭功能:
public function home() {
$test = 'test';
$this->set(compact('test'));
}
但是当我回家并使用调试工具包检查时,我发现没有$ test变量。
如何从控制器获取信息到主页视图?
答案 0 :(得分:3)
我的猜测是页面控制器的默认路由导致您遇到麻烦:
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
所以当你去/ pages / home时,它认为必须执行'display'动作。
尝试在其上方放置一条路线:
Router::connect('/pages/home', array('controller' => 'pages', 'action' => 'home'));
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
这样,主页将呈现您的主页操作,而所有其他主页将呈现默认的“显示”操作。
这一切都在/app/config/routes.php
。