У меня есть InitResource, который возвращает базовые данные, такие как некоторые данные приложения, такие как имя приложения и т. Д.
Теперь, если пользователь вошел в систему, я возвращаю ресурс с данными пользователя или без данных пользователя, но когда пользователь равен нулю или auth()->user()
равен нулю, я получаю сообщение об ошибке:
Не могу вернуть идентификатор нуля
public function __get($key)
{
return $this->resource->{$key};
}
А когда пользователь вошел в систему, он работает так, как должен.
Логически я пытаюсь вернуть ресурс без данных, но могу ли я использовать его с некоторыми «значениями по умолчанию»?
В ресурсе я проверяю:
$data = [
'appName' => config('app.name'),
'locale' => app()->getLocale(),
];
if($this->hasRole('basic')) {
$data['user'] = $this->only(['username', 'fullname', 'avatar']);
}
return $data;
Можно ли это сделать в ресурсе? С принятым нулем? Спасибо