Laravel按第二表格的一对多关系排序

时间:2016-06-06 04:18:48

标签: laravel-5 eloquent sql-order-by

嗨我有一对多关系的表

扇区

id
name
position

seat_plans

id
name
sector_id

我只想按部门选择所有座位计划。我试过了

 $seat_plans = SeatPlan::with(['sector' => function($q){
                                        $q->orderBy('position');
                                        }
                                    ])->get();

但它不起作用。当我检查SQL时它正在生成像

这样的查询
select * from seat_plans

任何人都可以告诉我该怎么做?

1 个答案:

答案 0 :(得分:1)

我认为您不需要为您的用例使用自定义功能。相反,试试这个:

$users = DB::table('seat_plans')
            ->join('sectors', 'seat_plans.sector_id, '=', 'sectors.id')
            ->select('seat_plans.*')
            ->orderBy('sectors.position')
            ->get();