Laravel 中 with 的判断写法怎么实现

需求大概是这样的,使用with查询,如果有结果,再去执行下一个with。这种写法在laravel怎么实现呢?

Laravel中with的判断写法怎么实现
就例如图中圈住的,如果查询有结果,继续下一步的with查询。我写法好像是有问题的,还是不能实现那么写:joy:

Reality Change Me
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 7

请忽略我粗糙的写法,只是在测试 :joy:

4个月前 评论
青风百里

奇怪的需求,全部 with 出来也不是不行。全部拿出来,用 filter 过滤一下,我觉得也是可以的。

4个月前 评论
with(['a.b' => function($query) {
    $query->where('b.x', 'xxx');
}]);

这样直接就可以了吧,没不要 with 两次 a。如果不行就分两次查询。

4个月前 评论

上面一条可以不要,这样写法没有问题,我都是这样写法

4个月前 评论
with(['table1' => function($query) {
    $query->with('table2');
}]);
4个月前 评论

上面说有wherehas 可以关联查询筛选,可以看下文档

4个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!