Я не могу найти информацию о том, как сделать сложный выбор из кэша Laravel 5.
У меня есть запрос:
$companys = Company::with(['comments' => function ($query) {
$query->where('status', '=', 'done');
}])->withCount('comments')->has('comments')->inRandomOrder()->paginate(8);
Мне нужно кэшировать этот запрос.
Я хочу сначала кэшировать все компании с комментами, а после выполнения запроса в кэш для получения случайных компаний с количеством комментариев и нумерацией страниц.
Примерно так:
$cache_companys = Cache::remember('companys', 30, function () {
return Company::with('comments')->get();
});
и после из $ cache_companys getмои компании для нумерации страниц.
Я попробовал сделать:
$companys = Cache::remember('companys', 30, function () {
return Company::with(['comments' => function ($query) {
$query->where('status', '=', 'done');
}])->withCount('comments')->has('comments')->inRandomOrder()->paginate(8);
});
, но в этом случае на всех страницах нумерации страниц были одни и те же компании.
Помогите мне, пожалуйста.
Спасибо.