Я использую setState в Yii, но я также получаю свойство "CWebUser.depId" не определено
Я хочу вернуть значение dep_id от пользователя таблицы, чтобы использовать его, поэтому setState должен возвращать его как (Yii::app()->user->depId), но когда я его использую, я получаю - "CWebUser.depId" не определен. Я искал, и я не знаю, что делать, и мне нужен быстрый ответ, это мой пример:
private $_id;
//private $_dep_id;
public function authenticate()
{
$user=User::model()->find('LOWER(username)=?',array(strtolower($this->username)));
if($user===null)
$this->errorCode=self::ERROR_USERNAME_INVALID;
else if(!$user->validatePassword($this->password))
$this->errorCode=self::ERROR_PASSWORD_INVALID;
else
{
$this->_id=$user->id;
$this->setState('depId',$user->dep_id);
$this->username=$user->username;
$this->setState('lastLogin', date("m/d/y g:i A", strtotime($user->last_login_time)));
$user->saveAttributes(array('last_login_time'=>date("Y-m-d H:i:s", time())));
$this->errorCode=self::ERROR_NONE;
}
return $this->errorCode==self::ERROR_NONE;
}
public function getId()
{
return $this->_id;
}
и тогда я получу это
Property "CWebUser.depId" is not defined.
в чем тут проблема?!
1 ответ
Решение
Вы должны быть аутентифицированным пользователем, чтобы использовать эту переменную в вышеприведенном сценарии, потому что она ограничена для аутентифицированных пользователей.