Eloquent 关系计数约束
Eloquent Relationship Count Constraint
我正在尝试编写一个 eloquent 查询,其工作方式如下:
Tables:
Order
Support Ticket (one to many with the order)
查询:
过滤支持工单,仅在支持工单少于 45 天时显示订单。
我觉得这是对 Laravel 中 whereHas() 方法的改编,但我不确定如何对这样的关系实施过滤器或日期搜索。
谢谢!
$orders = Order::whereDoesntHave('support_ticket')
->orWhereHas('support_ticket', function($query) {
$query->where('created_at', '>=', now()->subDays(45));
})->get();
其中“support_ticket”是订单模型中关系的名称。
通过这种方式,您可以检索没有支持票或至少有 1 天且少于 45 天的订单。
因为你在 Laravel 5 可能 now() 没有定义,那么你可以使用:
\Illuminate\Support\Carbon::now()
我正在尝试编写一个 eloquent 查询,其工作方式如下:
Tables:
Order
Support Ticket (one to many with the order)
查询: 过滤支持工单,仅在支持工单少于 45 天时显示订单。
我觉得这是对 Laravel 中 whereHas() 方法的改编,但我不确定如何对这样的关系实施过滤器或日期搜索。
谢谢!
$orders = Order::whereDoesntHave('support_ticket')
->orWhereHas('support_ticket', function($query) {
$query->where('created_at', '>=', now()->subDays(45));
})->get();
其中“support_ticket”是订单模型中关系的名称。 通过这种方式,您可以检索没有支持票或至少有 1 天且少于 45 天的订单。
因为你在 Laravel 5 可能 now() 没有定义,那么你可以使用:
\Illuminate\Support\Carbon::now()