santiago rematime pisos piso niños mesas laterales lamparas cunas blanca php laravel laravel-4 eloquent

php - rematime - Laravel 4: cómo "ordenar por" usando Eloquent ORM



rematime niños (3)

Así es como yo lo haría.

$posts = $this->post->orderBy(''id'', ''DESC'')->get();

Esta pregunta ya tiene una respuesta aquí:

Pregunta simple: cómo puedo ordenar por ''id'' descendiendo en Laravel 4.

La parte relevante de mi controlador se ve así:

$posts = $this->post->all()

Según entiendo, usa esta línea:

->orderBy(''id'', ''DESC'');

Pero, ¿cómo encaja eso con mi código anterior?


Si está utilizando el ORM Eloquent, debería considerar el uso de ámbitos. Esto mantendría su lógica en el modelo al que pertenece.

Entonces, en el modelo, tendrías:

public function scopeIdDescending($query) { return $query->orderBy(''id'',''DESC''); }

Y fuera del modelo, tendrías:

$posts = Post::idDescending()->get();

Más información: http://laravel.com/docs/eloquent#query-scopes


Si está utilizando una publicación como modelo (sin inyección de dependencia), también puede hacer:

$posts = Post::orderBy(''id'', ''DESC'')->get();