value . 'active_list', now()->addDay(), // Кешируем на 1 день function () { return FacultyResource::collection( Faculty::query() ->where('is_active', true) ->get() ); } ); $seo = $this->seoPageProvider->getSeoForCurrentPage(); return Inertia::render('Client/Faculties/Index', compact('faculties', 'seo')); } public function show(string $slug) { // Кешируем список факультетов $faculties = Cache::remember( CacheKeys::FACULTIES_PREFIX->value . 'active_list', now()->addDay(), function () { return FacultyResource::collection( Faculty::query() ->where('is_active', true) ->get() ); } ); // Кешируем данные конкретного факультета [$faculty, $seo] = Cache::remember( CacheKeys::FACULTY_PREFIX->value . $slug, now()->addDay(), function () use ($slug) { $faculty = Faculty::where('slug', $slug) ->where('is_active', true) ->with(['departments.faculty', 'workers.userDetail', 'seo']) ->firstOrFail(); $seo = $this->seoPageProvider->getSeoForModel($faculty); return [ new FullFacultyResource($faculty), $seo ]; } ); return Inertia::render('Client/Faculties/Show', compact('faculty', 'faculties', 'seo')); } }