Policies
Policies group authorization rules for a model.
What it is
Policies group authorization rules for a model.
When to use it
Use for ownership and per-resource capabilities.
Syntax
public function view(User $user, Order $order): bool {}Example
namespace App\Policies;
use App\Models\{User, Order};
class OrderPolicy
{
public function view(User $user, Order $order): bool
{
return $user->id === $order->user_id;
}
public function update(User $user, Order $order): bool
{
return $user->id === $order->user_id && $order->status === "pending";
}
}Common mistakes
Ensure discovery or registration matches the model; test both allowed and denied actors.