为了账号安全,请及时绑定邮箱和手机立即绑定

OctoberCMS Eager Loading with 和 where 条件

OctoberCMS Eager Loading with 和 where 条件

PHP
繁华开满天机 2023-05-26 14:14:59
我想用 where 条件过滤我的查询。假设我有一个 Product 模型,它与 Buyer 模型有关系。我想获得从一组 65 岁及以上的买家那里购买的产品型号列表。$query = Product::with('Buyer')   ->where('Buyer.age','>=',65)   ->get();但是,我无法放置这样的 where 条件,它显示“Buyer.age 的未知列”。请告知如何过滤我的结果?
查看完整描述

2 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

试试这个。


$query = Product::with('Buyer')

   ->whereHas('Buyer', function($q){  // whereHas will only return products whose buyer is >= 65

       $q->where('age','>=',65);

   })

  ->get();


查看完整回答
反对 回复 2023-05-26
?
动漫人物

TA贡献1815条经验 获得超10个赞

请尝试一下:


$query = Product::whereHas('Buyer', function ($query) {

   $query->where('age', '>=', 65);

})->with(['Buyer' => function($q){

   $q->where('age','>=',65);

}])

  ->get();


查看完整回答
反对 回复 2023-05-26
  • 2 回答
  • 0 关注
  • 125 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信