Load a page's image record in the admin API

PageResource only fills `featured_image_media` from the `featuredMedia`
relation when it is loaded, and PageController never loaded it, so every
admin response carried the image's URL with no dimensions, srcset or
placeholder even when the processed record existed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-28 11:16:31 +02:00
parent 748b485c9b
commit daf6098203

View File

@@ -30,7 +30,7 @@ class PageController extends Controller
$locale = app()->getLocale();
$pages = Page::query()
->with(['category', 'author'])
->with(['category', 'author', 'featuredMedia'])
->when($request->filled('status'), fn ($q) => $q->where('status', $request->string('status')))
->when($request->filled('category_id'), fn ($q) => $q->where('category_id', $request->integer('category_id')))
->when($request->has('is_featured'), fn ($q) => $q->where('is_featured', $request->boolean('is_featured')))
@@ -67,7 +67,7 @@ class PageController extends Controller
$page->save();
return PageResource::make($page->load(['category', 'author']))
return PageResource::make($page->load(['category', 'author', 'featuredMedia']))
->response()
->setStatusCode(201);
}
@@ -76,7 +76,7 @@ class PageController extends Controller
{
$this->authorize('view', $page);
return PageResource::make($page->load(['category', 'author']));
return PageResource::make($page->load(['category', 'author', 'featuredMedia']));
}
public function update(PageRequest $request, Page $page): PageResource
@@ -91,7 +91,7 @@ class PageController extends Controller
$page->save();
return PageResource::make($page->load(['category', 'author']));
return PageResource::make($page->load(['category', 'author', 'featuredMedia']));
}
public function destroy(Page $page): JsonResponse
@@ -109,7 +109,7 @@ class PageController extends Controller
$page->restore();
return PageResource::make($page->load(['category', 'author']));
return PageResource::make($page->load(['category', 'author', 'featuredMedia']));
}
/**