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时间栏位进行项目排序等,明天我们会提到一些进阶应用,
以及为什麽要把结构分成购物车主体以及购物车项目,原因如何?
明天揭晓!


祝各位中秋快乐,先来去吃烤肉了!


<<:  <Day6>你得先开个证券户

>>:  第5章:取得指令使用说明帮助方法

Day 51 (Node.js)

1.res.send()和 res.end()的差别 (1)res.write + res.end ...

Day 4 - Array Cardio Day 1

前言 JS 30 是由加拿大的全端工程师 Wes Bos 免费提供的 JavaScript 简单应用...

[Day13] 不打鱼晒网

[ 30 Days of ML Challenge | D03] 今天提供一个文件以及一个练习教材,...

Youtube Reports API 教学 - 最後一次做 OAuth2.0 授权

「鲑鱼均,因为一场鲑鱼之乱被主管称为鲑鱼世代,广义来说以年龄和脸蛋分类的话这应该算是一种 KNN 的...

[机派X] Day 7 - 啊我就怕 Nvidia 显卡驱动装不起来啊

引言 今天是机派X系列文章的第七天。 昨天介绍了 Ubuntu Server 常用的网路管理指令,今...