LaravelのELOQUENT ORMで結果を「制限」する方法はありますか?
SELECT * FROM `games` LIMIT 30 , 30
そしてEloquentとは?
Eloquentを拡張するゲームモデルを作成し、これを使用します。
Game::take(30)->skip(30)->get();
ここでtake()
は30レコードを取得し、ここでskip()
は30レコードをオフセットします。
最近のLaravelバージョンでは、次のものも使用できます。
Game::limit(30)->offset(30)->get();
結果をページ分割する場合は、統合された paginator を使用してください。
$games = Game::paginate(30);
// $games->results = the 30 you asked for
// $games->links() = the links to next, previous, etc pages
以下のようにLIMITを使用できます:
Model::take(20)->get();