V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
shanghai1943
V2EX  ›  问与答

电商系统中商品表如何设计

  •  
  •   shanghai1943 · 2021-05-17 16:20:05 +08:00 · 1845 次点击
    这是一个创建于 1288 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想讨论一下商品表的设计问题。

    按照自己对现有国内电商购物网站的了解,似乎商品的概念是包含有主商品信息以及 sku 信息的,假如某款商品没有 sku 的话(比如没有颜色尺码),那这款商品就只有主商品信息,或者就把主商品信息理解成 sku 信息。

    假如有商品表 product 和 sku 表 sku,想请教一下,你们会给只有主商品信息的商品也额外在 sku 表里创建一条 sku 信息么?还是说就只在 product 表里创建数据就好了,因为没有 sku,所以 sku 表里没有相关数据。

    先行谢过。

    16 条回复    2021-05-18 13:20:11 +08:00
    Fly4J
        1
    Fly4J  
       2021-05-17 16:32:31 +08:00
    要看你未来的商品中是否会有 sku 的概念,如果有,那就需要对这个商品添加 sku,因为库存是关联在 sku 上的
    shanghai1943
        2
    shanghai1943  
    OP
       2021-05-17 16:38:24 +08:00
    @Fly4J 我的想法是,因为这款商品没有 sku (别的商品可能有 sku ),所以就不需要在 sku 表里去创建 sku 信息了,以免这款商品后续如果改成有 sku 的话,那之前创建的 sku 信息是不是还得删除之类的。也不知道大家在设计商品表的时候是怎么考虑的。
    sujin190
        3
    sujin190  
       2021-05-17 16:47:53 +08:00
    其实你只要考虑到购物车系统、订单系统和仓储配送系统接受的都是 sku_id 就知道应该怎么搞了
    Jooooooooo
        4
    Jooooooooo  
       2021-05-17 16:56:10 +08:00
    商品本身分 spu 和 sku.
    shanghai1943
        5
    shanghai1943  
    OP
       2021-05-17 17:14:26 +08:00
    @sujin190 您提供的也是另一种思考角度,感谢。
    shanghai1943
        6
    shanghai1943  
    OP
       2021-05-17 17:15:21 +08:00
    @Jooooooooo 概念上大概能明白,就是设计的时候会纠结。
    Fly4J
        7
    Fly4J  
       2021-05-17 18:12:51 +08:00
    别的商品有 sku,那你为这个商品要单独维护一套标准或者代码,只会比你未来有 sku 后删除更费时费力
    victor
        8
    victor  
       2021-05-17 18:18:48 +08:00
    建议抄一下开源项目
    oneisall8955
        9
    oneisall8955  
       2021-05-17 18:43:25 +08:00 via Android
    没有属性的商品就是只有一个 variant🙄,看过 shopify 的文档,生产默认的 variant,属性是 default option,属性值是 default value
    iOCZ
        10
    iOCZ  
       2021-05-17 21:02:42 +08:00
    商品可能还有编辑,快照如何实施?
    treblex
        11
    treblex  
       2021-05-18 09:50:11 +08:00
    @shanghai1943 如果有 sku,发布商品的时候就必须有一个默认规格,没有两种都存在的情况
    shanghai1943
        12
    shanghai1943  
    OP
       2021-05-18 10:45:05 +08:00
    @oneisall8955 也就是说默认的 option value 会做一些特殊处理,不会在界面上展示出来是吧
    shanghai1943
        13
    shanghai1943  
    OP
       2021-05-18 10:45:55 +08:00
    @iOCZ 快照的话应该在下单的时候去读取当前数据的值然后做存储就好了吧
    oneisall8955
        14
    oneisall8955  
       2021-05-18 11:10:21 +08:00
    @shanghai1943 #12 shopify 怎么控制不清楚,我司仿照他们,并且在 product 表加上一个 flag 字段表示这个产品是单品,前端根据这个 flag 来控制是否展示 option 和 value 来选择(如果有人恰好设置了多变体的 option 和 value 与默认的一样,flag 是多变体还是能正确展示)

    https://shopify.dev/docs/admin-api/rest/reference/products/product#create-2021-04
    oneisall8955
        15
    oneisall8955  
       2021-05-18 11:12:12 +08:00
    @oneisall8955 #14 这样设计是为了后期所有的购物车,订单流程等,都是按照 sku 来操作
    shanghai1943
        16
    shanghai1943  
    OP
       2021-05-18 13:20:11 +08:00
    @oneisall8955 了解。感谢。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3397 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:58 · PVG 19:58 · LAX 03:58 · JFK 06:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.