Skip to content

Commit 4c79856

Browse files
committed
feat: page index moved to PageCollection
1 parent ac5fdc9 commit 4c79856

File tree

3 files changed

+30
-3
lines changed

3 files changed

+30
-3
lines changed

app/Http/Controllers/PageController.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace App\Http\Controllers;
44

55
use App\Http\Requests\PageRequest;
6+
use App\Http\Resources\PageCollection;
67
use App\Http\Resources\PageResource;
78
use App\Models\Page;
89
use Illuminate\Http\Request;
@@ -17,7 +18,7 @@ class PageController extends Controller
1718
public function index()
1819
{
1920
// Return the retrieved pages as a JSON response
20-
return new PageResource(Page::all());
21+
return new PageCollection(Page::all());
2122
}
2223

2324
/**
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?php
2+
3+
namespace App\Http\Resources;
4+
5+
use Illuminate\Http\Request;
6+
use Illuminate\Http\Resources\Json\ResourceCollection;
7+
8+
class PageCollection extends ResourceCollection
9+
{
10+
/**
11+
* Transform the resource collection into an array.
12+
*
13+
* @return array<int|string, mixed>
14+
*/
15+
public function toArray(Request $request): array
16+
{
17+
return parent::toArray($request);
18+
}
19+
}

openapi.json

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,14 +102,14 @@
102102
],
103103
"responses": {
104104
"200": {
105-
"description": "Return the retrieved pages as a JSON response\n\n\n\n`PageResource`",
105+
"description": "Return the retrieved pages as a JSON response\n\n\n\n`PageCollection`",
106106
"content": {
107107
"application/json": {
108108
"schema": {
109109
"type": "object",
110110
"properties": {
111111
"data": {
112-
"$ref": "#/components/schemas/PageResource"
112+
"$ref": "#/components/schemas/PageCollection"
113113
}
114114
},
115115
"required": [
@@ -526,6 +526,13 @@
526526
}
527527
},
528528
"schemas": {
529+
"PageCollection": {
530+
"type": "array",
531+
"items": {
532+
"$ref": "#/components/schemas/PageResource"
533+
},
534+
"title": "PageCollection"
535+
},
529536
"PageRequest": {
530537
"type": "object",
531538
"properties": {

0 commit comments

Comments
 (0)