Задать вопрос

Как кешировать на Laravel 5 постраничный вывод?

Здравствуйте!

Может кто сталкивался на Laravel 5 с кешированием постраничного вывода.
В 4 версии проблем не было, использовал:
->remember(60)
->paginate(10);

- все работало. В 5 версии так работать не хочет, а при таком варианте:
$value = Cache::remember('users', $minutes, function()
{
    return DB::table('users')->paginate(15);
});

показывает на всех страницах одни и те-же данные.
Без кеша все работает.

С уважением Константин.
  • Вопрос задан
  • 1025 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
AmdY
@AmdY
PHP и прочие вебштучки
Конечно, работать не будет, у вас ключ для кеша не учитывает номер страницы. Нужно что-то вроде (С пятой версией не работал и нет под рукой возможности проверить код)
$value = Cache::remember('users-' .  \Request::input('page'), $minutes, function()
{
    return DB::table('users')->paginate(15);
});

А почему вы за данными лизите не через ORM, а через грязный DB::table?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы