Хорошей практикой является загрузка данных модели в контроллер.
В вашем TestController
public function actionTest(){
$model = new User();
$model->username = Yii::$app->getUser()->getIdentity()->username;
if($model->load(Yii::$app->getRequest()->post()){
$model->save();
// and ...
}
return $this->render('view', ['model'=>$model]);
}
В вашем представлении файл
<?= $form->field($model, 'username')->textInput(['maxlength' => true])?>
В этом случае, если вы хотите запретить пользователю изменять значение имени пользователя, измените код контроллера на что-то вроде этого:
public function actionTest(){
$model = new User();
$model->username = Yii::$app->getUser()->getIdentity()->username;
if($model->load(Yii::$app->getRequest()->post()){
// Overwrite user input.
$model->username = Yii::$app->getUser()->getIdentity()->username;
$model->save();
// and ...
}
return $this->render('view', ['model'=>$model]);
}