Mahmoud Al-HabashOpen to new projects
  • WorkWork
  • ServicesServices
  • LabLab
  • WritingWriting
  • ContactContact
Amman--:--عربي
Writing/Laravel

Laravel Policy Classes: Authorization Made Easy

Implement authorization logic cleanly with Laravel policy classes.

24 December 20251 min readLaravelاقرأ بالعربية

On this page

  1. Create Policy
  2. Use in Controller
  3. Use in Blade

Use policies for authorization:

Create Policy

php
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

php
$this->authorize('update', $post);

Use in Blade

blade
@can('update', $post)
    <a href="/posts/{{ $post->id }}/edit">Edit</a>
@endcan
All articles

Keep reading

  • Laravel Action Classes Pattern16 January 20261 min read
  • Laravel Action Classes: Single Responsibility16 January 20261 min read
  • Laravel API Rate Limiting16 January 20261 min read