Laravel 查询生成器仅获取具有特定进度的项目
Laravel Query Builder get only item with specific progress
你好,我正在尝试获取具有特定产品进度的产品订单。
我的 Laravel 查询如下所示:
return Order::whereHas('products.progress', function (Builder $query) {
$query->where('progress_id', 100)
->orWhereBetween('progress_id', [160, 240]);
})
->with('products.progress')
->select('orders.id', 'orders.customer_id', 'orders.created_at')
->get();
在查询中我设置了一个 where 和 whereBetween,最后一个 Product 有 progress_id 50 一个不应该加载到订单中。
怎么做?感谢阅读。
所以您的(wheres)应该正在加载中...
return Order::with(['products'=>function($query){
$query->whereHas('progress',function ($query){
$query->where('progress_id', 100)
->orWhereBetween('progress_id', [160, 240]);
})->with('progress');
}])
->select('orders.id', 'orders.customer_id', 'orders.created_at')
->get();
你好,我正在尝试获取具有特定产品进度的产品订单。
我的 Laravel 查询如下所示:
return Order::whereHas('products.progress', function (Builder $query) {
$query->where('progress_id', 100)
->orWhereBetween('progress_id', [160, 240]);
})
->with('products.progress')
->select('orders.id', 'orders.customer_id', 'orders.created_at')
->get();
在查询中我设置了一个 where 和 whereBetween,最后一个 Product 有 progress_id 50 一个不应该加载到订单中。
怎么做?感谢阅读。
所以您的(wheres)应该正在加载中...
return Order::with(['products'=>function($query){
$query->whereHas('progress',function ($query){
$query->where('progress_id', 100)
->orWhereBetween('progress_id', [160, 240]);
})->with('progress');
}])
->select('orders.id', 'orders.customer_id', 'orders.created_at')
->get();