Reputation: 169
I want to make ADD
button only visible to admin-type user. My code looks like this:
@foreach($users as $user)
@if(Auth::user()->type=='admin')
<a href="{{ route('User.create', ['id'=>$user->id ]) }}" class="btn btn-default</i> ADD</a>
@endif
@endforeach
But, it returns lot of ADD
button according to number of all users because of foreach
loop. If I remove foreach loop, it will show error:
Undefined variable: user
How can I solve this problem?
Upvotes: 3
Views: 943
Reputation: 2540
You do not need to use foreach loop to check authenticated user having type admin
You need to remove passing id into the user.create route
@if(Auth::user()->type == 'admin')
<a href="{{ route('User.create') }}" class="btn btn-default</i> ADD</a>
@endif
Upvotes: 1
Reputation: 1673
It's because of you are removing the foreach , but using the variable $user
again inside the routes
.
Please remove the $user->id
and instead, use Auth::user()->id .
@if(Auth::user()->type=='admin')
<a href="{{ route('User.create', ['id'=>Auth::user()->id ]) }}" class="btn btn-default</i> ADD</a>
@endif
Upvotes: 1