首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >结构用于存储来自各个字段的产品详细信息。

结构用于存储来自各个字段的产品详细信息。
EN

Stack Overflow用户
提问于 2018-05-16 06:46:23
回答 1查看 1.7K关注 0票数 4

我正在构建一个应用程序,它需要支持不同类别的产品(如在时装、电子、汽车、Grocery等产品中),因此很明显,对于每个领域的产品(甚至是它们的子类别),产品属性将因类别而异。

示例:

领域的产品如牛仔裤、衬衫等,具有尺寸、颜色、类型、材质等性能,而电子中的产品则可以像移动电话、笔记本电脑等具有产品特性,如处理器、内存、存储、尺寸、颜色等。

我的问题是关于如何以尽可能广泛有效的方式存储这些信息?

我想出了一个解决方案:

我已经考虑过创建三个表来维护这些信息。

  1. products 表:

该表将包含所有产品&它们在嵌套集表单中的类别,以便--每个父将充当类别,而--每个叶将充当产品E 230

此外,此表还将包含有关产品的元信息(如名称、购买价格、销售价格、sku等,这些信息对于任何类型的产品都是常见的)。此表的可能表结构如下:

代码语言:javascript
复制
id(PK), 
client_fk(FK to clients), 
parent_id(for nested-sets), 
lft(for nested-sets), 
rgt(for nested-sets), 
depth(for nested-sets), 
name(meta), 
sku(meta), 
purchasing_price(meta), 
selling_price(meta), 
created_at, 
updated_at
  1. 另外两个表的工作方式类似于EAV模型结构。

products_props**table:**

此表将将所有可能的属性存储到任何产品(来自任何类别),如大小、颜色、处理器、内存、存储等,并使用存储它们的元详细信息,如描述、输入类型详细信息等。表结构可用于此表。

id(PK), name, label, description, input_type, input_details, created_at, updated_at

  1. products_props_data 表:

此表将包含产品所具有的所有属性的值。此表的表结构可以是:

id(PK), product_prop_fk(FK to products_props), product_fk(FK to products), value, created_at, updated_at

读取此信息的将远远超过插入、更新或删除。

问题:

  1. 我走正确的路了吗?
  2. 有效率吗?
  3. 还有别的路吗?
  4. 为实现我正在努力的目标提出建议/建议。
  5. 众所周知的电子商务是如何做到的?比如亚马逊,Flipkart,eBay?
EN

回答 1

Stack Overflow用户

发布于 2018-05-16 06:57:37

  1. 看上去没问题
  2. 别担心这件事
  3. 很可能
  4. 如果使用EAV,我喜欢为不同类型的属性类型构造不同的表-因此,我将为整数属性创建一个表,为十进制属性创建一个表,并为字符串创建一个表。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50364086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档