我希望我的家(View / Pages / home.ctp)成为公共视图,因为每次我尝试访问时,都会将我重定向到/ users / login .. AppController.php:
public $components = array(
'Session',
'Auth' => array(
'loginRedirect' => array('controller' => 'users', 'action' => 'areaRestrita'),
'logoutRedirect' => array('controller' => 'users', 'action' => 'logout'),
'authError' => 'Você deve fazer login para ter acesso a essa área!',
'loginError'=> 'Combinação de usuário e senha errada!'
)
);
BeforeFilter:
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow( 'index' );
}
我该怎么办?我试图在pagesController.php中放置一个beforeFilter来允许('display')但是不起作用。
答案 0 :(得分:1)
您允许使用Auth进行操作而不是视图。 CakePHP的默认Pages控制器使用相同的display()
操作来呈现所有静态视图。因此,如果您只想允许主页为其执行单独操作并将“/”路由到该操作,或者在beforeFilter()
中使用$this->request->params
检查请求是否适用于主页并使用{{ 1}}。