2016-04-03 44 views
0

我正在使用Laravel 5.2。 我有3個表(型號):Laravel,多個查詢嵌套多個訂單

  • 活動
  • 日期
  • 會議

我的關係:事件的hasMany日期。日期有許多會話。 問題是,當我用日期和會話得到事件時,數據沒有排序。

如何使用訂購會話的訂購日期和日期獲得事件。

$event = Event::find($id); 
$event->load(['dates' => function($query) 
    { 
     $query->orderBy('date', 'asc'); 
    } 
]); 

這就是我如何得到訂購日期的事件。如何爲每個日期訂購會話?

感謝

回答

0

我想我已經找到了答案。加載在嵌套查詢中不起作用。所以我應該使用「與」而不是「加載」。

$event = Event::find($id); 
$event->load(['dates' => function($query) 
      { 
       $query->with(['sessions' => function($query) 
            { 
             $query->orderBy('starts_at', 'asc'); 
            } 
       ])->orderBy('date', 'asc'); 
      } 
    ]);