预加载嵌套关联,可以使用「点」语法。例如,在一个 Eloquent 语句中,预加载所有书籍作者和这些作者的联系信息:
$books = AppBook::with('author.contacts')->get();
那么如何为分别为author 和 contacts 指定查询字段呢?
方法一:
AppBook::with(['author' => function ($query) {
$query->select(['选定的字段']);
$query->with(['contacts' => function ($query) {
$query->select(['选定的字段']);
}]);
}])->get()
方法二:
AppBook::with(['author:id,name', 'author.contacts:email,user_id'])->get();
方法三:
AppBook::with(['author' => function ($query) {
$query->select(['选定的字段']);
},'author.contacts' => function ($query) {
$query->select(['选定的字段']);
}])->get();
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » laravel嵌套预加载为每个关联指定查询字段
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » laravel嵌套预加载为每个关联指定查询字段