spatie/laravel-resource-endpoints
Abandoned package that adds controller-based “links” and collection “meta” links to Laravel API Resources. Automatically generates URLs for actions like index/show/edit/update/delete, so resources can expose REST endpoints without manually building routes.
Next to controllers, you can also add actions to an links group:
class UserResource extends JsonResource
{
use HasLinks;
public function toArray($request)
{
return [
'links' => $this->links(function (Links $links) {
$links->action([UsersController::class, 'create']);
}),
];
}
}
Is possible to specify the parameters for the links:
$links
->action([UsersController::class, 'create'])
->parameters(User::first());
Or prefix the link:
$links
->action([UsersController::class, 'create'])
->prefix('admin');
The name of the action can also be changed:
$links
->action([UsersController::class, 'create'])
->name('build');
Changing the Http verb(POST, GET, …) of the action can be done as such:
$links
->action([UsersController::class, 'create'])
->httpVerb('POST');
How can I help you explore Laravel packages today?