我正在使用auth组件,我不想在用户登录后可以访问登录页面,只能由匿名用户访问。我可以在登录方法中添加什么来实现此目的?我试过这个:
if (isset($this->Auth->user('id')) {
$this->redirect('/profile/');
}
但是我收到以下错误:
致命错误:无法使用方法返回值
答案 0 :(得分:10)
Auth组件实际上提供了a method来检查用户是否已登录。
$this->Auth->loggedIn();
还有其他六种方法可以检查,但这个方法最好,因为它抽象了身份验证会话的实现。此外,它更容易阅读。
答案 1 :(得分:3)
if ($this->Session->check('Auth.User')){
$this->redirect('/profile/');
}