Yii Помните меня функциональность?

Привет, я новичок в yii и ниже, это моя функция UserIdentiy. Пожалуйста, дайте мне знать, как я могу добавить функцию помню меня

public function authenticate() { $users = array(); if ($this->usertype == "registration") { $users = Login::model()->findByAttributes(array('email' => $this->username)); $users = $users->attributes; } if (empty($users)) $this->errorCode = self::ERROR_USERNAME_INVALID; elseif (!empty($users['password']) && $users['password'] !== md5($this->password)) $this->errorCode = self::ERROR_PASSWORD_INVALID; elseif (!empty($users['status']) && $users['status'] !== 1) $this->errorCode = self::STATUS_NOT_ACTIVE; else { $this->_id = $users->id; $this->errorCode = self::ERROR_NONE; } return !$this->errorCode; } 

В protected\config\main.php массив конфигурации присутствует в этом массиве, перейдите к индексу component . Внутри этого user массива ассоциативное индексированное значение 'allowAutoLogin' должно иметь логическое значение true

Поэтому он должен выглядеть так

 'components' => array( 'user' => array( // enable cookie-based authentication 'allowAutoLogin' => true, ), ... 

И вы должны использовать следующее свойство наряду с методом входа, приведенным ниже, вы можете легко запомнить меня.

 class LoginForm extends CFormModel { public $username; public $password; public $rememberMe; private $_identity; 

метод входа должен быть таким, как в классе модели входа

 public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username, $this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; } использованием public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username, $this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; } данных public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username, $this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; } использованием public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username, $this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; } данных public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username, $this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; } 

И это основной код для запоминания функции

 Yii::app()->user->login($this->_identity,$duration);