为什么不能在有约束的热切关系上使用orderBy()?

时间:2018-09-11 17:30:56

标签: php laravel eloquent laravel-5.6 eager-loading

$Classes = Classes::with(['Queue' => function($query){

    $query->where('date', '<=', \Carbon\Carbon::parse("2018-09-16"))
          ->where('status', ClassStatus::PENDING())
          ->orderBy('date', 'asc');

}])->whereIn('user_course_id', UserCourse::get_user_course_id($user_id))->get();

这是我用来获取$ Classes的查询。

稍后我会使用

显示“队列”数据
   foreach($Queues as $Queue){
               foreach($Queue as $Q){
                echo $Q->date."\n";
               }

        }

我得到的输出是

2018-09-16
2018-09-13
2018-09-12
2018-09-13
2018-09-13

因此,肯定是通过“队列”模型id进行排序的。我该如何在date列中订购?

1 个答案:

答案 0 :(得分:0)

您正在按 per 类订购队列。使用sortBy()

$Queues = $Queues->sortBy('date');