前兩天講得訂單不知道大家還有沒有印象?
在產生訂單之前還有個很常用到的功能----購物車
現代電商沒有購物車的已經非常稀少,
購物車的一些相關應用,例如分析或者客製化推薦商品等等功能,
這邊不多做說明,直接看範例結構的部份
// 購物車主體
Schema::create('cart', function (Blueprint $table) {
$table->string('member_id', 30)->comment('會員id');
$table->primary(['member_id']);
});
// 購物車項目
Schema::create('cart_item', function (Blueprint $table) {
$table->string('id', 30)->comment('項目id');
$table->string('cart_id', 30);
$table->string('product_id', 30);
$table->integer('quantity'); // 數量
$table->primary(['id']);
$table->index(['cart_id']);
$table->index(['product_id']);
});
cart table重點就是一個會員只能有一個購物車主體,
我們直接看cart_item的部份
id 購物車項目id,主要用於更新數量及刪除項目
cart_id 購物車主體id,用於判斷屬於哪個購物車
商品id跟數量還是老樣子略過,最基礎的購物車結構大概就上面那樣,
一樣有些客製欄位可以增加,
例如方便計算折扣可以直接把discount_price寫在cart_item上,
或者增加created_at時間欄位進行項目排序等,明天我們會提到一些進階應用,
以及為什麼要把結構分成購物車主體以及購物車項目,原因如何?
明天揭曉!
祝各位中秋快樂,先來去吃烤肉了!