6.6. 用户订单列表
订单列表
上一节我们完成了将购物车中的商品创建成订单,本章节将要实现用户端的订单列表页。
1. 控制器
在 OrdersController
新增 index()
方法:
app/Http/Controllers/OrdersController.php
use Illuminate\Http\Request;
.
.
.
public function index(Request $request)
{
$orders = Order::query()
// 使用 with 方法预加载,避免N + 1问题
->with(['items.product', 'items.productSku'])
->where('user_id', $request->user()->id)
->orderBy('created_at', 'desc')
->paginate();
return view('orders.index', ['orders' => $orders]);
}
2. 前端模板
接下来创建一个新的前端模板:
$ mkdir -p resources/views/orders && touch resources/views/orders/index.blade.php
resources/views/orders/index.blade.php