1.with()与load区别:
都称为 延迟预加载
,不同点在于 load()
是在已经查询出来的模型上调用,而 with()
则是在 ORM 查询构造器上调用。
Order::query()->with(['items.product','items.productSku'])->paginate(); public function show(Order $order, Request $request) { return view('orders.show', ['order' => $order->load(['items.productSku', 'items.product'])]); }
2.post提交过来的对象.如何从中获取要的列
$skuIds = collect($request->input('items'))->pluck('sku_id')->all(); $skuIds = collect($request->input('items'))->pluck('sku_id'); //注意对比二者的区别,前者返回的是数组,后者返回的还是collection