spatie/laravel-endpoint-resources
Abandoned package that adds controller/action-based URL links to Laravel API resources and collection meta. Includes traits to generate “show/edit/update/delete” item links and “index/create/store” collection links automatically.
When using collection links in your resource the code for adding these collection links can be quite confusing:
class UserResource extends JsonResource
{
use Spatie\ResourceLinks\HasLinks;
public static function collection($resource)
{
return parent::collection($resource)->additional([
'meta' => [
'links' => self::collectionLinks(UsersController::class)
],
]);
}
}
That's why we've added a little helper which puts links immediately in the meta section of a resource collection:
class UserResource extends JsonResource
{
use Spatie\ResourceLinks\HasLinks;
use Spatie\ResourceLinks\HasMeta;
public static function meta()
{
return [
'links' => self::collectionLinks(UsersController::class)
];
}
}
You can use this little helper by including the Spatie\ResourceLinks\HasMeta trait in your resource.
How can I help you explore Laravel packages today?