与电子商务相关的条款
在电子商务设置中,我们有产品和变体 . 变体也是产品,但它们在某些属性上有所不同 .
例如:T恤可能因 Size
和 Color
属性而异 . 假设我们有 Size
和 Color
属性的以下选项 Color
:红色,绿色 Size
:小,大
然后,我们可以为这件T恤有4个变种
整个问题将使用以下术语:
Option Type :有助于创建变体的产品属性 eg :大小,颜色,材质等 .
Option Value :特定选项类型可能的值 . eg : Size
选项类型可以包含以下选项值 Small
, Medium
, Large
, Extra-Large
Variation theme :变体主题是创建变体所需的 option type
列表
Prototype :Prototype只是产品的模板 . Prototype帮助我们轻松创建产品 . 它存储以下信息: - 产品属性 - 变量主题
目标
我们有2个角色: Admin
, Seller
以下是角色可以做的事情
管理员可以
-
创建产品类别(taxon)并将其与产品相关联
prototype
-
将原型与特定产品类别的变体主题相关联
-
创建变体主题
-
为变体主题创建和关联选项类型
-
为特定选项类型创建默认模板选项值
-
eg:
Size
选项类型可以有S
,M
,L
,XL
选项值 -
如果需要选项类型,可以添加更多默认模板值
卖家可以
-
创建产品
-
选择产品的变体主题
-
为所选变体主题填充选项类型 .
-
可以为选项类型选择默认模板选项值 OR 为选项类型添加新选项值
以下是需要牢记的一些限制因素
-
卖方查看管理员设置的选项类型的可能选项值
-
当卖方为选项类型添加新选项值时,它不应影响Admin添加的选项值
数据库设计
图解图图像
让我们看看上面的数据库设计是否符合目标
-
Admin can create product category(taxon) and associate it with prototype.
-
Taxon
是一个类别节点并存储原型键,每个类别可以有一个原型 . 这确保了我们总是有一个类别与一个原型相关联 . -
Associate prototype with variation themes for a particular product category.
-
Variation theme
存储原型id和protoype可以有许多变体主题 . -
Admin can create and associate option types for variation theme
-
Variation theme
有很多Option types
到theme_option_types
表 . -
Admin can create default template option values for particular option type.
-
Option values
特定option type
可以存储在template_option_value
中 . 例如 . 管理员可以将s
,m
,l
,xl
设置为卖家在创建产品时可以选择的默认值 . -
一个
option type
可以有很多option values
. -
Seller can create product and select variation theme for a product.
-
要创建产品,卖家必须选择产品可能属于的类别(分类) . 例如:智能手机产品可能属于
Electronics => Mobiles & Accessories => Smartphones & Basic Mobiles => Smartphones
. -
作为产品直接与类别(
taxon
)关联,产品原型很容易找到 . -
Populate option type for selected variation theme.
-
Prototype
有很多variation themes
,因此可以根据所选主题中的option type
创建product
forproduct
.
-
Seller can either select default template option values for option type
-
用户可以在
template_option_values
中显示选项类型的可能选项值 .
-
Seller can add new option type for option type
-
由于选项值存储在不同的表中,即 .
variant_option_values
,我们可以为该变体的选项类型添加尽可能多的选项值 . -
此外,新值不会添加到admin添加的默认选项中,因为我们为变体的选项值维护了不同的表 .
痛点
-
这些值存储在不同的表(
variant_option_values
)中,因此当卖家选择主要由admin添加的选项值时,将重复这些值 . -
我也不确定我的设计是实现目标的最佳方式 . 需要验证和批评 .