Недопустимый номер параметра. Параметр не определен

UPDATE2:

Я создал новый компонент WebUser.php в / protected / components следующим образом:

<?php class WebUser extends CWebUser{ private $_model; function getId(){ $user = $this->loadUser(Yii::app()->user->id); return $user->id; } protected function loadUser($id=null){ if($this->_model===null) { if($id!==null) { $this->_model=Users::model()->findByPk($id); } return $this->_model; } } } 

Я также зарегистрировал компонент в main.php. После загрузки изменений мое приложение все еще утверждает, что WebUser.getId не определен.

ОБНОВИТЬ:
После внесения изменений, а затем откат их, я получаю новую ошибку:

 Property "CWebUser.getId" is not defined. 

Ниже приведен фрагмент кода:

 $user = Users::model()->find('username=?', array( Yii::app()->user->getId)); 

Как и где следует getId установить ссылку на поле $ id в модели Users?

Мой UserController выбрасывает следующую ошибку SQL:

 CDbCommand failed to execute the SQL statement: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined. The SQL statement executed was: SELECT * FROM `users` `t` WHERE username=? LIMIT 1 

Ошибка вызвана этим фрагментом контроллера:

 public function actionProfile($id=''){ $user = Users::model()->find('username=?', array(Yii::app()->user->getId())); if(!$id){ $id = $user->id; if(!$id) $this->redirect('login'); } if( getUserSess('user_type') == 'Sitter') { $this->render('profile_detail', array('user_id' => $id )); } else { $this->render('petowner_profile_detail',array( 'model'=>$this->loadModel($id), )); } } 

Профиль profile_detail выглядит следующим образом:

 <?php if(!$user_id){ $user_id = getUserSess('id'); } $this->widget('ext.UserProfile.BasicProfile',array('user_id'=>$user_id)); ?> <?php //$this->widget('ext.UserProfile.UserServices',array('user_id'=>$user_id)); ?> 

Представление petowner_profile_detail выглядит следующим образом:

 <?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$model, 'attributes'=>array( 'username', 'email', 'phone', 'fname', 'lname', 'address1', 'address2', 'city', 'state', 'zip', 'is_year_old', 'user_type', // 'register_date', // 'varified_date', // 'is_premium', // 'last_login', ), )); ?> 

Как исправить ошибку SQL?

Related of "Недопустимый номер параметра. Параметр не определен"

ОБНОВИТЬ:

$ user = Пользователи :: model () -> find ('username =: id', array (": id" => Yii :: app () -> user-> id));

UPDATE2:

Yii :: app () -> user-> getId () или Yii :: app () -> user-> id not Yii :: app () -> user-> getId