我在Laravel 5中有这个代码,使用了非常好的工作:
$filterTask = function($query) use ($id) {
$query->where('taskid', $id);
};
User::whereHas('submissions', $filterTask)->with(['submissions' => $filterTask])->get();
基本上,目标是让只有那些使用过滤提交的用户才能使用这些用户。然而,似乎浪费了运行whereHas和使用相同回调函数的方法。有没有办法简化呢?
谢谢。
| 不,没有其他方式(使用c的雄辩关系查询)。为什么会浪费? - Jarek Tkaczyk Apr 12 '15 at 17:47 | ||
那么,因为我们过滤了两次提交的条件; 我只是希望有一个解决方案可以使它成为一个查询而不是更多,但是@lukasgeiter完全清楚了。 - iCore Apr 13 '15 at 17:40 | |||
为什么这个答案的选票太少了? - whoan Jul 15 '16 at 3:22 |