Я пытаюсь получить один и тот же файл вида nav.blade.php на разных контроллерах, но получить другой контент для администратора и другой для пользователя, но есть ошибка.
ошибка: просмотр: /var/www/epharma/resources/views/nav.blade.php)
И проблема в этой линии
строка 48:
@if(Auth::user()->type === 'User')
<div> Html for user</div>
Это произойдет, когда не будет авторизованного пользователя. Вы можете сделать что-то вроде этого:
@if (Auth::guest())
<p> Not logged in</p>
@elseif(Auth::user()->type === 'User')
<p> Logged in</p>
@endif
Попробуй это
if(Auth::user() && Auth::user()->type === 'User')
не будет выдавать ошибку, если первое условие ложно
Пользователь не авторизован Auth::user()
является Null
, И вы пытаетесь получить null->id
, получить свойство id из необъекта (null
).
Вы должны сначала проверить, что пользователь аутентифицирован Auth::check()
или же Auth::user() != null
..так далее. а затем попробуйте получить пользовательские свойства.
Был получен ответ, но вы также можете сделать это
@if (Auth::guest())
<p> Not logged in</p>
@elseif(Auth::user()->type == 'User')
<p> Logged in</p>
@endif