想象我们有一个关于一对多关系的
Facture
和 Item
模型
我正在使用
$facture->items()
或 $facture->load('items')
,效果非常好,
但是当我需要像items
一样在where('items.price',30)
上使用条件时,我不知道没有DB::
就可以做到这一点
实际上我尝试使用
leftJoin()
,因为它在关系的右侧有条件,这个解决方案无法帮助我。
这似乎是
whereRelation
方法的一个很好的用例,
您可以在查询生成器中执行类似的操作:
->whereRelation('items', 'price', '=', 30)
这将有效地仅返回包含价格为 30 的商品的 Factures。