Поскольку вы, вероятно, не передаете переменную $user
в каждое из ваших представлений, но расширяете представление боковой панели, попробуйте вместо этого использовать помощник Laravel auth()
, чтобы получить пользовательскую модель. Вы можете сделать что-то вроде этого:
@if(auth()->user()->role == "handlers")
<li>
<a href="{{ url('/kontaktuppgifter') }}">
<i class="fa fa-user fa-fw"></i>
kontaktuppgifter
</a>
</li>
@endif
Вы также можете поделиться переменной $ user со всеми вашими представлениями, так что вам не придется запрашивать базу данных каждый раз, когда вы хотите получить пользовательские данные.
Вы можете сделать это в функции класса BaseController __construct()
функция:
//App\Http\Controller.php
public function __construct()
{
$user = auth()->user();
view()->share('user', $user);
}
Затем вы можете использовать переменную пользователя в своем представлении, как вы делаете это прямо сейчас:
@if($user->role == "handlers")
<li>
<a href="{{ url('/kontaktuppgifter') }}">
<i class="fa fa-user fa-fw"></i>
kontaktuppgifter
</a>
</li>
@endif