CakePHP Auth组件:如何检查是否有人登录?

geo*_*310 1 authentication cakephp

我正在使用auth组件,我不希望一旦用户登录就可以访问登录页面,它只能由匿名用户访问.我可以在登录方法中添加什么来实现此目的?我试过这个:

if (isset($this->Auth->user('id')) {
    $this->redirect('/profile/');
}
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

致命错误:无法使用方法返回值

Bra*_*och 10

Auth组件实际上提供了一种检查用户是否已登录的方法.

$this->Auth->loggedIn();
Run Code Online (Sandbox Code Playgroud)

还有其他六种方法可以检查,但这个方法最好,因为它抽象了身份验证会话的实现.此外,它更容易阅读.