2013-01-09 8 views
6

PróbowałemJak ustawić Yii :: app() -> user-> nazwa

public function getName() 
{ 
    return 'TEST'; 
} 

w UserIdentity.php ale nie wydaje się, aby zmienić wartość Yii :: app() -> użytkownik-> nazwa

+0

Chociaż to pytanie jest na Yii1, napisałem odpowiedź na h ow to zrobić poprawnie w Yii2. Na wypadek, gdyby ktoś szukał w Google tego miejsca na ziemi, przeczytaj to na Yii2: http://stackoverflow.com/questions/38415388/yii2-how-to-get-the-current-username-lub-name-od-yiiapp- użytkownik –

Odpowiedz

11

W klasie UserIdentity zdefiniowano, że należy ustawić nowy stan za pomocą metody setState(name, value).

Na przykład w metodzie authenticate jeśli użytkownik jest dobre: ​​

//if the user is good (good login and good password) 
$this->_id=$record->id; 
$this->setState('name', $record->name); 
$this->errorCode=self::ERROR_NONE; 

Wtedy będzie można zadzwonić Yii::app()->user->name