Use policies for authorization:
Create Policy
class PostPolicy
{
public function update(User $user, Post $post)
{
return $user->id === $post->user_id;
}
public function delete(User $user, Post $post)
{
return $user->isAdmin() || $user->id === $post->user_id;
}
}Use in Controller
$this->authorize('update', $post);Use in Blade
@can('update', $post)
<a href="/posts/{{ $post->id }}/edit">Edit</a>
@endcan