0

我在 Cake 2.3.6 stable 中犯了一些可怕的错误。我遵循了 Auth 教程并在 AppController 中添加了:

public function beforeFilter() {
    $this->Auth->allow('index', 'view');
}

但是当我在主页上进入该站点时,蛋糕抛出我无权访问该位置。

我在 PagesController 中尝试了没有效果:

public function beforeFilter() {
    parent::beforeFilter();
    $this->Auth->allow('index');
}

我仔细检查了教程和我的代码,除了我必须在 CalculationsController 中将“$this->Post”与“$this->Calclulation”交换之外,没有任何区别。此外,AppController 中的登录和注销重定向不起作用。

public $components = array(
    'Session',
    'Auth' => array(
        'loginRedirect' => array('controller' => 'calculations', 'action' => 'index'),
        'logoutRedirect' => array('controller' => 'pages', 'action' => ''),
        'authorize' => array('Controller')
    )
);

怎么可能解决?提前致谢 :)

4

1 回答 1

2

Please, check default routers. app/Config/routes.php

Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

this mean, that home page is actulay rendered by pages controller and action display, so, you should allow display

$this->Auth->allow('display');
于 2013-06-27T16:14:54.503 回答