class Authorize (View source)

Properties

protected Gate $gate

The gate instance.

Methods

void
__construct(Gate $gate)

Create a new middleware instance.

static string
using(UnitEnum|string $ability, string ...$models)

Specify the ability and models for the middleware.

mixed
handle(Request $request, Closure $next, string $ability, array|null ...$models)

Handle an incoming request.

array
getGateArguments(Request $request, array|null $models)

Get the arguments parameter for the gate.

Model|string
getModel(Request $request, string $model)

Get the model to authorize.

bool
isClassName(string $value)

Checks if the given string looks like a fully qualified class name.

Details

void __construct(Gate $gate)

Create a new middleware instance.

Parameters

Gate $gate

Return Value

void

static string using(UnitEnum|string $ability, string ...$models)

Specify the ability and models for the middleware.

Parameters

UnitEnum|string $ability
string ...$models

Return Value

string

mixed handle(Request $request, Closure $next, string $ability, array|null ...$models)

Handle an incoming request.

Parameters

Request $request
Closure $next
string $ability
array|null ...$models

Return Value

mixed

Exceptions

AuthenticationException
AuthorizationException

protected array getGateArguments(Request $request, array|null $models)

Get the arguments parameter for the gate.

Parameters

Request $request
array|null $models

Return Value

array

protected Model|string getModel(Request $request, string $model)

Get the model to authorize.

Parameters

Request $request
string $model

Return Value

Model|string

protected bool isClassName(string $value)

Checks if the given string looks like a fully qualified class name.

Parameters

string $value

Return Value

bool

Laravel Cloud is the best place to deploy Laravel, Nuxt, Express, Hono, Node.js, Bun, Go, Flask, Python, and more, with dedicated infrastructure available on AWS through Laravel Private Cloud.