2014-01-21 6 views
19

Bisher habe ich folgendes Modell:Wählen Sie die ersten 10 Reihen - Laravel Eloquent

class Listing extends Eloquent { 
    //Class Logic HERE 
} 

Ich möchte eine grundlegende Funktion, die die ersten 10 Reihen meiner Tabelle „Listings“ ruft und leitet sie an den Blick auf (über einen Controller?).

Ich weiß, dass dies eine sehr einfache Aufgabe ist, aber ich kann keine einfache Anleitung finden, die Schritt für Schritt erklärt, wie man einen grundlegenden Satz von Ergebnissen anzeigt, während detailliert beschrieben wird, was in den Modell-, Controller- und Ansichtsdateien benötigt wird .

Antwort

47

Zuerst können Sie einen Paginator verwenden. Dies ist so einfach wie:

$allUsers = User::paginate(15); 

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

Die Variablen enthalten eine Instanz der Paginator-Klasse. Alle Ihre Daten werden unter data Schlüssel gespeichert.

Oder Sie können etwas tun, wie

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

Weitere Lektüre diese Links betrachten:

+0

Vielen Dank Vit, war mir nicht bewusst Laravel hatte t sein Merkmal und es ist genau das, wonach ich suche. – Jonnerz

+0

Sie sind willkommen. Wenn es funktioniert, erwäge, die Antwort so zu akzeptieren, dass sie als gelöst markiert wird. –

+1

Ich denke, Sie finden es: -> take (10) -> get(); – Joeri

5

Die einfachste Art und Weise in Laravel 5:

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

return view('view.name',compact('listings')); 
1

Ein anderer Weg, es wird mit einer limit Methode zu tun:

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

Dies kann nützlich sein, wenn Sie versuchen, nicht zu implementieren Paginierung, aber zum Beispiel, 10 zufällige Zeilen aus einer Tabelle zurückgeben: