AuthComponent
은 세션 키를 처리하는 방식 때문에이 방법을 사용할 수 없습니다. 그러나 세션에 직접 저장할 수는 있습니다.
: 컨트롤러가 얻을 수에 대한 귀하의
AppController
에
beforeFilter()
에서 다음
function login() {
if ($this->Auth->login($this->data)) {
$this->User->id = $this->Auth->user('id');
$this->User->contain(array('Profile', 'Group'));
$this->Session->write('User', $this->User->read());
}
}
, var에 저장 :
이 작업을 수행 할 수있는 유일한 방법은 사용자가 로그인 할 때 세션에 추가하는 것입니다
function beforeFilter() {
$this->activeUser = $this->Session->read('User');
}
// and allow the views to have access to user data
function beforeRender() {
$this->set('activeUser', $this->activeUser);
}
업데이트 : CakePHP 2 기준2 (announced here), 이제 AuthComponent는 세션에 추가 정보를 저장하기위한 '포함'키를 허용합니다.
세션에서 사용자를 설정할 때주의 할 단어. 사용자가 더 이상 인증되지 않아도 세션 데이터가 설정된 상태로 남아있을 수 있습니다. 로그 아웃 할 때 세션 데이터가 삭제되었는지 확인해야합니다. "User"가 아닌 "Auth.User"에 세션을 저장하면됩니다. +1하여 CakePHP 2.2 업데이트에 대한 답변을 업데이트하십시오. – drmonkeyninja