Laravel 4: Comment "commander par" en utilisant Eloquent ORM [dupliquer]
Cette question a déjà une réponse ici:
Question Simple-Comment puis-je commander par 'id' descendant dans Laravel 4.
La partie pertinente de mon contrôleur ressemble à ceci:
$posts = $this->post->all()
Si je comprends bien, vous utilisez cette ligne:
->orderBy('id', 'DESC');
Mais comment cela correspond-il à mon ci-dessus code?
132
demandé sur
Josh
2013-07-09 20:13:47
3 réponses
Si vous utilisez post comme modèle (sans injection de dépendance), vous pouvez également faire:
$posts = Post::orderBy('id', 'DESC')->get();
229
répondu
Chris G
2014-03-10 18:50:30
Si vous utilisez L'ORM Eloquent, vous devriez envisager d'utiliser des étendues. Cela garderait votre logique dans le modèle où elle appartient.
Ainsi, dans le modèle, vous auriez:
public function scopeIdDescending($query)
{
return $query->orderBy('id','DESC');
}
Et en dehors du modèle que vous auriez:
$posts = Post::idDescending()->get();
Plus d'infos: http://laravel.com/docs/eloquent#query-scopes
47
répondu
Relaxing In Cyprus
2015-04-22 07:23:36
C'est comme ça que je m'y prendrais.
$posts = $this->post->orderBy('id', 'DESC')->get();
24
répondu
Matthew Camp
2013-07-09 16:24:47