返回分层belongsToMany关系Laravel 5.3中的所有数据

时间:2017-09-24 23:25:05

标签: php mysql laravel api relationships

我的模型是Netflix-esque(在层次结构的意义上)。作为一个例子,我有一个属于ToMany课程的课程,属于ToMany Collection,属于ToMany Subgroup,属于ToMany Group。课程是最低级别,最高级别为Group。走下链条,每个人都属于下一个链接的下一个链接。

我正在使用一个过滤器按钮,可以从Wordpress调用我的Laravel API。当我传递组ID和子组ID时,我需要能够返回属于子组的集合。但我需要的是:

$group->with('subgroups')->where('subgroup_id')->with('collections')->with('courses')->with('lessons');

然而,这种语法并不起作用。有没有办法查询每个级别并获得该级别的关系?

如果需要更多代码,我很乐意分享更多代码。

1 个答案:

答案 0 :(得分:1)

以下是未经测试的,但应该立即开始工作,或者让您自己了解如何解决问题。

几点:

  1. 您可以在include include-file html head body +my-include('my title', 'my description') 来电中链接关系。例如。 with会为找到的courses.lessons获取所有courses和相关的lessons
  2. collections允许您查询关系。在此示例中,我正在查找所有集合,其子组与传递的子组ID匹配,并且还有一个与传递的组ID匹配的组。
  3. 示例:

    whereHas