Laravel orderBy en una relación

Estoy revisando todos los comentarios publicados por el autor de una publicación en particular.

foreach($post->user->comments as $comment) { echo "
  • " . $comment->title . " (" . $comment->post->id . ")
  • "; }

    Esto me da

     I love this post (3) This is a comment (5) This is the second Comment (3) 

    ¿Cómo ordenaría por el post_id para que la lista anterior esté ordenada como 3,3,5?

    Es posible extender la relación con las funciones de consulta:

     hasMany('Comment')->orderBy('column'); } 

    [editar después del comentario]

     hasMany('Comment'); } } class Controller { public function index() { $column = Input::get('orderBy', 'defaultColumn'); $comments = User::find(1)->comments()->orderBy($column)->get(); // use $comments in the template } } 

    modelo de usuario predeterminado + ejemplo de controlador simple; Al obtener la lista de comentarios, simplemente aplique el ordenBy () basado en Input :: get (). (asegúrese de hacer alguna comprobación de entrada;))