Есть ли способ "ограничить" результат с помощью ELOQUENT ORM Laravel?
Есть ли способ "ограничить" результат с помощью ELOQUENT ORM Laravel?
SELECT * FROM `games` LIMIT 30 , 30
И с Красноречивым?
Ответы
Ответ 1
Создайте модель игры, которая расширяет Eloquent и использует это:
Game::take(30)->skip(30)->get();
take()
здесь будет получено 30 записей, а skip()
здесь будет смещено до 30 записей.
В последних версиях Laravel вы также можете использовать:
Game::limit(30)->offset(30)->get();
Ответ 2
Если вы ищете результаты с разбивкой по страницам, используйте встроенный paginator, он отлично работает!
$games = Game::paginate(30);
// $games->results = the 30 you asked for
// $games->links() = the links to next, previous, etc pages
Ответ 3
Мы можем использовать LIMIT, например, ниже:
Model::take(20)->get();