2016-09-17 8 views
0

私のlaravelプロジェクトでは、私はすべての投稿を読み込んでいます。投稿者、投稿者、返信先が熱心な読み込み機能を使用しています。ここでlaravel eagerロードで並べ替えるとどうなりますか?

$pin = Posts::with('author', 'replies', 'replies.author')->find($pin_id); 

は、回答モデルです:

<?php 

namespace App; 

use Illuminate\Database\Eloquent\Model; 

class Replies extends Model 
{ 
    public function replyable() 
    { 
     return $this->morphTo(); 
    } 

    public function author() 
    { 
     return $this->belongsTo('App\User', 'author_id'); 
    } 

} 

たちは熱心ロード機能を使用して、すべての記事をフェッチしながら、その(応答)IDの降順でrepliesをソートすることが可能です。

答えて

3

私はこれが役立つと思います。

Posts::with(['replies' => function($query) { 
      $query->orderBy('id'); 
}])->find($pin_id); 
+1

Ow!たくさんのありがとう。また、すべてのコメントをページ付けしたいと思ったら少し説明できますか? paginate()メソッドを使用していますか? – rakibtg

+0

エム...私はここで改ページできるとは思わない。あなたの関係をロードすることを熱望するときは、モデルのきれいなインスタンスが必要です。 'with'メソッドでフィルタリングや並べ替え、あるいは別の関係をロードすることができます... 希望はそれです:) – xAoc

関連する問題