思路越来越乱了,今下午又想到了以下办法,最后又觉得行不通,求大佬们给个数据的设计方案 以及发布思路、。。。。这是今下午想到的新思路,还是行不通。。。 /***************************************/ 商品分类 跟品牌 一对多关系
比如 手机分类 包括 1 三星 2 苹果 3 小米 ....
数据库字段 (品牌主表)
品牌 id 品牌名称 品牌图片 品牌简介
(商品分类关联品牌表)
自增 id 商品分类 id 品牌 id /***************************************/ 商品类型 跟商品规格 一对多关系
比如 手机类型 对应规格 1 "颜色":["红色","绿色","黄色","蓝色"] 2 "内存":["16","32","64","128"]
数据库字段 (商品类型表)
商品类型 id 类型名称
(商品规格表)
规格 id 规格名称 规格值 商品类型 id /***************************************/ (商品主表 ) 存储以下字段
商品 id 商品名 商品介绍 商品主图路径 相册图路径 商品分类 id 商品类型 id 品牌 id 富文本内容 ...
(商品附属表 ) 存储以下字段
自增 id 所属商品 id sku 插件熏染的 json |||||(备注)同一商品 可能存储 多条不同规格的 json
/***************************************/
此处为演示
主表:
商品 id 商品名 商品介绍 商品主图路径 相册图路径 商品分类 id 商品类型 id 品牌 id 富文本内容 ...
1 苹果 6s XXXXXXXX XXXXXXXX XXXXXXXX 18 18 18 XXXXXXXXXXXXXX
附属表:
自增 id 所属商品 id sku 插件熏染的 json
1 1 {颜色: "红色", 内存: "16", 版本: "国行", 库存: "100", …}
2 1 {颜色: "银色", 内存: "32", 版本: "国行", 库存: "110", …}
前端可以进行链表查询 /***************************************/ 发布商品 逻辑
1~选定商品分类
2~根据分类 查询出分类下的品牌 然后选定品牌
3~选择商品类型 ajax 查询出该类型下边的所有规格 并组合成以下 类型
{ "颜色":["红色","绿色","黄色","蓝色"], "内存":["16","32","64","128"] };
配合 sku 插件 进行渲染
主表入库 获取到商品 id 然后附加表遍历入库
这是下午想出来的新想法,跟朋友讨论好久 ,还是行不通,求教 我是用 thinkphp5.1 做的。。
1
Z1076 2018-09-02 09:51:52 +08:00
不熟的话参考下 Shopnc 的设计
|
2
ivencooli 2018-09-02 09:59:19 +08:00 via Android
ecshop 了解一下
|
3
hellocat666 2018-09-02 12:09:02 +08:00 via iPhone
你描述的不够清楚,但是商品属性大概就几个做法,供你参考
1.雪花表。有多少种商品分类,就有 N + 1 张表。主表存储商品必备信息( sku 名称),分表存储每个类型独有字段(手机有颜色、内存,鞋子有尺码、鞋宽。 当然你把所有东西都放一张表里也是一种办法。市面开源 cms 一般用这个。 2.EAV 模型。百度一下,三张表解决问题。magento,ecshop 都这个方式。 3.如果你只要展示不要筛选,搞个字段塞个 json 完事儿。 最后,lz 可以说下自己的商品量,属性量,筛选复杂度,和服务器配置。大部分场景我都建议用 elasticsearch,MySQL 你把 1 或 2 做出来了,都不好满足后续越来越复杂的产品需求和性能要求,这种复杂检索本来也不是 MySQL 可以应付的。magento 慢出了名,ecshop 属性量大了也是慢。 |
4
vibbow 2018-09-02 14:15:35 +08:00
iwebshop 了解一下
|
5
ershisi 2018-10-26 20:31:19 +08:00
这都有现成的了 去看下 zencart magento 等等就 ok 了。
|