有条件的热切加载

编程入门 行业动态 更新时间:2024-10-28 20:19:16
本文介绍了有条件的热切加载-Laravel的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有这个查询:

$tournament = Tournament::with( 'championships', 'championships.settings', 'championships.category', 'championships.tree.users', )->first();

现在,它给了我所有附加冠军的比赛。

Right now, it gives me the tournament with all attached championships.

我需要得到的是锦标赛,但只有与我拥有的$ request-> championshipId相匹配的锦标赛。

What I need is to get the tournament but only with the championship which match the $request->championshipId that I have.

当然,我还希望在所有其他关系( championships.settings, championships.category, championships.tree.users)中使用此过滤器。知道吗?

Off course, I also want this filter in all the other relations ('championships.settings', 'championships.category','championships.tree.users') Any idea?

推荐答案

您可以使用 code>约束渴望的加载 像这样:

You can use Constraining Eager Loading like this:

$tournaments = Tournament::with(['championships' => function ($query) { $query->where('something', 'like', '%this%'); }, 'championships.settings' => function ($query) { $query->where('something', 'like', '%this%'); }, ...])->get();

希望这会有所帮助!

更多推荐

有条件的热切加载

本文发布于:2023-10-20 03:12:42,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1509671.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:热切   有条件   加载

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!