CakePHP - 身份验证以节省用户上次登录时间



哪里是插入代码以保存用户上次登录的最佳位置?我使用CakePHP认证登录系统,几乎在手册中的标准实现。

我可以在哪里插入代码,以便它将保存到用户记录之前的Auth重定向登录后?

如果您希望执行UsersController::login()方法中的代码,则需要禁用AuthComponent::autoRedirect:

public $components = array(
    'Auth' => array(
        // ...
        'autoRedirect' => false,
    ),
);

你可以在你的登录操作中这样做,但是你仍然需要手动执行重定向:

public function login() {
    if ($this->Auth->user()) { // check user is logged in
        $this->User->id = $this->Auth->user('id'); // target correct record
        $this->User->saveField('last_login', date(DATE_ATOM)); // save login time
        $this->redirect($this->Auth->redirect()); // redirect to default place
    }
}

最新更新