Laravel也返回空结果

时间:2014-09-05 14:05:11

标签: php laravel eloquent

我正在使用Laravel 4来获得所有具有特定事件得分的人

这是我正在使用的查询

$event = Person::with(array('eventscore' => function($q){
    $q->where('id', 3);
}))->get();

问题是它还会返回在eventscore表中没有得分的人。

这是输出

enter image description here

有什么方法可以让我只返回得分的人吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

with()不会限制返回的Person,它只会限制eventscores。如果您只想要Person个有事件分数,请使用haswhereHas

$event = Person::whereHas('eventscore', function($q) {
    $q->where('id', 3);
})->get();