通过第二关系过滤第一关系

时间:2017-04-05 15:13:51

标签: laravel-5 eloquent laravel-eloquent

我正在努力通过教师关系过滤属于学校的老师。

学校有用户。用户可能与教师有多种关系 [这个到目前为止工作]。

...然后教师有一个或多个教学阶段和教学主题我想过滤一个或多个(传递ID数组)。

$teachers = $school->teachers()
                ->whereHas('teachingstages', function ($query) use ($filters) {
                    $query->whereIn('teachingstage_id', $filters['teachingstages']);
                })
                ->whereHas('teachingsubjects', function ($query) use ($filters) {
                    $query->whereIn('teachingsubject_id', $filters['teachingsubjects']);
                })
            ->orderBy('rating', 'desc')->get();

目前我确实得到了结果,但是排除了具有多个教学阶段和教学对象的教师。我哪里错了?

谢谢K ......

1 个答案:

答案 0 :(得分:0)

好的,所以上面的确有效。道歉,数据播种存在一个非常小的问题,这就是为什么我得到了意想不到的结果:/我的不好 - 谢谢你看......但