Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 04.10.2018 11:56:18

Объединение коллекций с пагинацией

Добрый день, подскажите, пожалуйста, есть 3 модели, к примеру Post, Journal и Event. Необходимо объединить все в одну коллекцию с сортировкой по created_at, без загрузки всех элементов сразу и с возможностью постраничного просмотра.

$posts = Post::get();
$journals = Journal::get();
$events = Event::get();

$collection  = new Collection;
$all = $collection->merge($posts)->merge($journals)->merge($events);
$all = $all->sortByDesc('created_at')->forPage(1, 10);

Такой вариант не подходит, т.к. элементов в моделях может быть очень много, а как загружать только необходимое кол-во в голову не приходит.

Не в сети

Подвал раздела