使用Eloquent关系对Laravel集合进行过滤

3

我有一个关于Laravel集合过滤的问题。

这是情况: 我有一个Test模型,其中我与Question模型建立了Eloquent关系hasMany。在TestController的索引方法中,我只想获取具有3个或更多问题的测试。

$tests = Test::where(function($test) {
    return $test->questions->count() > 3;
})->get();

像下面的代码一样,但显然这不会起作用。

提前感谢。

PS:这是我在stackoverflow上的第一个问题,抱歉我的英语不好...

1个回答

6
$tests = Test::has('questions', '>=', 3)->get();

for more info read Laravel Docs


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接