考虑以下雄辩的模型:
$itemModel->whereHas('location.country', function($q2) use ($value){
$q2->where('id', $value);
});
当我运行它时,我得到一个(预期的)异常说
Call to undefined method Illuminate\Database\Query\Builder::country()
在执行whereHas查询之前,有什么方法可以检查这种关系的存在吗?
答案 0 :(得分:0)
这不是使用whereHas
的正确方法,查询中的多个关系用于急切加载。
你可以尝试:
$item->whereHas('location',function($query) use ($value){
$query->whereHas('country')->where('id',$value);
});
没有为whereHas
实施关系嵌套