Einfache Frage - wie kann ich von 'id' absteigend in Laravel 4 bestellen.
Der relevante Teil meines Controllers sieht wie folgt aus:
$posts = $this->post->all()
So wie ich das verstehe, verwenden Sie diese Zeile:
->orderBy('id', 'DESC');
Aber wie passt das zu meinem obigen Code?
Wenn Sie post als Modell verwenden (ohne Dependency Injection), können Sie das auch tun:
$posts = Post::orderBy('id', 'DESC')->get();
Wenn Sie den Eloquent ORM verwenden, sollten Sie die Verwendung von Scopes in Betracht ziehen. Dies würde Ihre Logik im Modell halten, wo sie hingehört.
Also, im Modell würden Sie haben:
public function scopeIdDescending($query)
{
return $query->orderBy('id','DESC');
}
Und außerhalb des Modells würde man haben:
$posts = Post::idDescending()->get();
Mehr Informationen: http://laravel.com/docs/eloquent#query-scopes
Ich würde folgendermaßen vorgehen.
$posts = $this->post->orderBy('id', 'DESC')->get();