微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用laravel中的关系获取3个表中的数据

如何解决如何使用laravel中的关系获取3个表中的数据

我想从三个表中获取数据。该表被命名为学生录取和课程。在我的查询中,我使用以下查询获取学生数据和录取数据

$student = Student::with('student_fees')->with('admissions')->get();

而且我也想要课程表数据,但是课程表数据与录取表有关。如何使用此查询获取课程表数据?

解决方法

你可以使用嵌套的预先加载 https://laravel.com/docs/8.x/eloquent-relationships#nested-eager-loading

假设您在每个模型类中定义了与 Laravel 约定的关系。您可以调用嵌套的急切加载,如下所示:

$student = Student::with(['student_fees','admissions','admissions.course'])->get();
,
$users = DB::table('Student')->join('admissions','student.id','=','admissions.student_id')->join('course','course.id','admissions.course_id')->select('Student.*','Student.name','course.name')->get();

https://laravel.com/docs/5.7/queries#joins - 这可以帮助您

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。