码迷,mamicode.com
首页 > 其他好文 > 详细

渴求式加载指定字段、加载多个关联关系、嵌套的渴求式加载、带条件约束的渴求式加载

时间:2019-10-10 11:06:58      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:联系   func   span   pre   包含   嵌套   自定义   添加   tle   

渴求式加载多个关联关系

有时候你需要在单个操作中渴求式加载多个不同的关联关系。要实现这个功能,只需要添加额外的参数到 with 方法即可:

1 $books = App\Book::with(‘author‘, ‘publisher‘)->get();

嵌套的渴求式加载

要渴求式加载嵌套的关联关系,可以使用”.“语法。例如,我们在一个 Eloquent 语句中渴求式加载所有书的作者及所有作者的个人联系方式:

1 $books = App\Book::with(‘author.contacts‘)->get();

渴求式加载指定字段

并不是每次获取关联关系时都需要所有字段,因此,Eloquent 允许你在关联查询时指定要查询的字段:

1 $users = App\Book::with(‘author:id,name‘)->get(); 

注:使用这个特性时,id 字段是必须列出的。

带条件约束的渴求式加载

有时候我们希望渴求式加载一个关联关系,但还想为渴求式加载指定更多的查询条件:

1 $users = App\User::with([‘posts‘ => function ($query) {
2     $query->where(‘title‘, ‘like‘, ‘%first%‘);
3 }])->get();

在这个例子中,Eloquent 只渴求式加载 title 包含 first 的文章。当然,你还可以调用其它查询构建器来自定义渴求式加载操作:

1 $users = App\User::with([‘posts‘ => function ($query) {
2     $query->orderBy(‘created_at‘, ‘desc‘);
3 }])->get();

渴求式加载指定字段、加载多个关联关系、嵌套的渴求式加载、带条件约束的渴求式加载

标签:联系   func   span   pre   包含   嵌套   自定义   添加   tle   

原文地址:https://www.cnblogs.com/clubs/p/11646175.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!