web-dev-qa-db-ja.com

最初の10行を選択-Laravel Eloquent

これまでのところ、次のモデルがあります。

class Listing extends Eloquent {
     //Class Logic HERE
}

テーブル「リスト」の最初の10行を取得し、それらをビューに(コントローラー経由で)渡す基本的な機能が必要です。

これは非常に基本的なタスクであることは知っていますが、モデル、コントローラー、ビューファイルで必要なものを詳しく説明しながら、基本的な結果セットを表示する方法を段階的に説明する簡単なガイドは見つかりません。

44
Jonnerz

最初に、ページネーターを使用できます。これは次のように簡単です。

$allUsers = User::paginate(15);

$someUsers = User::where('votes', '>', 100)->paginate(15);

変数には、Paginatorクラスのインスタンスが含まれます。すべてのデータはdataキーの下に保存されます。

または、次のようなことができます:

古いバージョンのLaravel。

Model::all()->take(10)->get();

新しいバージョンのLaravel。

Model::all()->take(10);

詳細については、次のリンクを検討してください。

89
Vit Kos

laravel 5で最も簡単な方法は次のとおりです。

$listings=Listing::take(10)->get();

return view('view.name',compact('listings'));
19
Luca C.

別の方法は、limitメソッドを使用することです。

Listing::limit(10)->get();

これは、ページネーションを実装しようとしていないが、たとえば、テーブルから10個のランダムな行を返す場合に便利です。

Listing::inRandomOrder()->limit(10)->get();
12
Amade