【Laravel】Eloquentでeagar loadingした結果をごにょごにょしたい
withで指定した要素に無名関数を渡す
order by
Order::with(['order_detail' => function ($query) { $query->orderByDesc('created_at'); }])->get();
select * from `order_details` where `order_details`.`id` in (1) order by `created_at` desc
where
$date = new Carbon('20210731'); Order::with(['order_details' => function ($query) use ($date) { $query->where('created_at', '>=', $date->subMonthsNoOverflow(1)); }])->get();
select * from `order_details` where `order_details`.`id` in (1) and `created_at` >= '2021-06-30 00:00:00'
with
こういうこともできる
Order::with([ 'order_details' => function ($query) { $query->with([ 'products' ]); } ])->get();