@m4tkv

Как получить переменную user->identity во view?

Подскажите, как получить доступ к переменной user->identity во view.
Понятно, что я могу во view сделать так:
<span><?=Yii::$app->user->identity->name?></span>
Могу в начале вью объявить переменную $user и вокруг нее крутиться
$user = Yii::$app->user->identity;

Могу запрокинуть $user во view прям в контроллере:
$user = Yii:$app->user->identity;
return $this->render('master',compact('user'));


Но я уверен, что есть способ использовать $user->identity сразу во вью, но не знаю как. Если это невозможно, то подскажите как правильнее.
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
myks92
@myks92 Куратор тега Yii
Нашёл решение — пометь вопрос ответом!
Боюсь вас огорчить, но другого способа нет)) Для этого и есть специально Identity, чтобы работать с авторизованным юзером.

Единственное я бы разделил аутентификацию и юзеров. Тогда вы можете добавить там свой метод и реализовать такое:

public function getName(): string
    {
       //Здесь ваша проверка
        return $this->user ? $this->user->getName() : 'БЕЗ ИМЕНИ!'; 
    }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы