如何在 Laravel 中预加载 3 个不同的关系?
How can I eager load on 3 different relationships in Laravel?
我有 4 个表:user
、user_course
、classes
和 queues
。
user_course
有一个 user_id
,classes
有一个 user_course_id
,queues
有一个 classes_id
列。
我想检索具有 class_id
且对应于当前 user_id
注册的 user_course
的所有队列。
基本上,我想做的是:$user->user_course->classes->queues
除非我不能直接循环上面的内容。
所以我怎么能用 $classes = App\Classes::with('Queues')
之类的东西来加载它,除了将它限制为当前登录的 user_id
?
我不熟悉预加载,无法正常工作。如果我需要编辑问题详情,请通知我。
您可以使用:
$user = User::with('user_course.classes.queues')->find($idOfUser);
首先运行查询获取用户课程,然后运行查询获取用户课程类然后运行查询获取队列共 类.
我有 4 个表:user
、user_course
、classes
和 queues
。
user_course
有一个 user_id
,classes
有一个 user_course_id
,queues
有一个 classes_id
列。
我想检索具有 class_id
且对应于当前 user_id
注册的 user_course
的所有队列。
基本上,我想做的是:$user->user_course->classes->queues
除非我不能直接循环上面的内容。
所以我怎么能用 $classes = App\Classes::with('Queues')
之类的东西来加载它,除了将它限制为当前登录的 user_id
?
我不熟悉预加载,无法正常工作。如果我需要编辑问题详情,请通知我。
您可以使用:
$user = User::with('user_course.classes.queues')->find($idOfUser);
首先运行查询获取用户课程,然后运行查询获取用户课程类然后运行查询获取队列共 类.