web-dev-qa-db-fra.com

laravel 5.2 - Modèle :: tous () trier par

Je reçois la collection complète d'un modèle avec les éléments suivants:

$posts = Post::all();

Cependant, je veux que ce soit dans l'ordre chronologique inverse.

Quel est le meilleur moyen d'obtenir cette collection dans l'ordre souhaité?

12
datavoredan
$posts = Post::orderBy('created_at', 'desc')->get();

Vous pouvez utiliser la méthode orderBy. Remplacez le nom de la colonne par celui que vous voulez. 

30
Jilson Thomas

Vous pouvez maintenant utiliser sortBy ou sortByDesc

$posts = Post::all()->sortBy('created_at');
7
Nicolas Perraut

Comme beaucoup peuvent migrer vers de nouvelles versions de Laravel, vous pouvez utiliser :: latest () à partir de 5.3 - https://laravel.com/docs/5.5/queries#ordering-grouping-liming-and-offset .

0
conrad10781