问题描述
Act Review 通过这种关系连接到“Act_master”。 One-Act 可以有很多评论。
public function reviews() {
return $this->hasMany('ActReview','act_id','id');
}
问题:我应该如何按照从最大评论数到最小评论数来获得动作列表顺序。
到目前为止我尝试了什么?
我添加了带有“whereHas”的查询,但结果列表没有得到期望的结果,作为从最高到最低评论的行为列表。
我也试过“WITH”,但也没有用。
$list = ActMaster::where('status','=','1');
$list = $list->whereHas('reviews',function ($query) {
$query->select(\DB::raw('count(*) as row_count'));
$query->where('published','1');
$query->orderBy('row_count','desc');
$query->groupBy('act_id');
});
$list = $list->paginate(10);
解决方法
试试这个:
map