iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
永豐金融APIs

掌握訂單與線上金流的剪不斷理還亂系列 第 15

Day15 購物車 -- 基礎結構

前兩天講得訂單不知道大家還有沒有印象?
在產生訂單之前還有個很常用到的功能----購物車
現代電商沒有購物車的已經非常稀少,
購物車的一些相關應用,例如分析或者客製化推薦商品等等功能,
這邊不多做說明,直接看範例結構的部份

// 購物車主體
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時間欄位進行項目排序等,明天我們會提到一些進階應用,
以及為什麼要把結構分成購物車主體以及購物車項目,原因如何?
明天揭曉!


祝各位中秋快樂,先來去吃烤肉了!


上一篇
Day14 訂單 -- 多項目結構
下一篇
Day16 購物車 -- 異動通知
系列文
掌握訂單與線上金流的剪不斷理還亂30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言