Laravel Eloquent - 返回 Where Has + Where [重复]
Posted
技术标签:
【中文标题】Laravel Eloquent - 返回 Where Has + Where [重复]【英文标题】:Laravel Eloquent - Return Where Has + Where [duplicate] 【发布时间】:2022-01-09 19:20:48 【问题描述】:我的客户通过订单有很多包裹。
public function parcels()
return $this->hasManyThrough(Parcel::class, Order::class);
我只想退回包裹超过 0 且状态为成功的客户。
但是我不知道如何添加包裹状态的条件。目前,这份声明给了我一份有包裹的客户名单。
$customers = Customer::has('parcels', '>' , 0)->get();
【问题讨论】:
【参考方案1】:您可以使用whereHas
方法。
$customers = Customer::whereHas('parcels', function ($query)
$query->where('status', 'successful');
)->get();
【讨论】:
以上是关于Laravel Eloquent - 返回 Where Has + Where [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Laravel - 在 Eloquent 模型中返回自定义额外数据
laravel 返回与 eloquent 和 laravel 的关系
在 Laravel 中,哪些 Eloquent 方法返回数据,哪些返回对象?
laravel:关系方法必须返回 Illuminate\Database\Eloquent\Relations\Relation 类型的对象