如何用 Eloquent 查询所有没有某种类型证书的用户?
拉拉维尔 4
我有两张桌子:
users table:
->id
->name
certificats table:
->id
->user_id
->certificate_type
我已经为此苦苦挣扎了好几个小时。我尝试的最后一件事是:
$users = User::with(array('certificate' => function($query)
{
$query->where('type','!=','SL');
}))->get();
这给了我所有的用户,但我试图让所有没有证书类型“SL”的用户。
-- 编辑: Spencer7593 下面的原始查询有效。但我没有让雄辩的查询起作用。
SELECT u.*
FROM users u
LEFT
JOIN certificates c
ON c.user_id = u.id
AND c.type = 'SL'
WHERE c.user_id IS NULL
关系:
public function certificate(){
return $this->hasMany('Certificate');
}
public function certificate(){
return $this->belongsTo('User');
}