产品变体的优势是什么?

时间:2014-11-09 06:08:11

标签: hybris

我对Hybris的产品变体感到困惑。

例如,为什么你会选择使用变量来获得大小或颜色?

不会扩展产品项目以包括样式和大小作为属性简化结果数据模型吗?

非常感谢任何见解。

2 个答案:

答案 0 :(得分:4)

变体是电子商务系统中的常见概念。 Hybris和其他人一样支持这一点:

那我们为什么要这样做呢?主要是为了便于管理。

如果我们采用服装示例,也许我们的产品没有尺寸或颜色(可能是太阳镜)的变化,我们的产品只有颜色变化(帽子?),我们有产品的尺寸和颜色变化(也许是T恤)。

以下是我们的设置:

  • 产品
    • 产品蓝色
      • 产品Blue / S
    • 产品红色
      • 产品红/ M
    • 产品绿色
      • 产品Green / S
      • 产品Green / XL

在此示例中,我们只需在“产品”上配置一个Price。我们只需要在“产品蓝色”,“产品红色”和“产品绿色”上配置3个图像。然后,我们可以在“叶子”变体上配置Stock Levels。​​

因此,不同的产品会有不同的变化数量和不同的变化方式。因此,我们不希望用大量的Null列填充Product表,这些列表示每个产品的所有这些可能的变化。通过VariantType MetaType采用更可扩展的方法。

通过这种方法,您可以通过items.xml创建“具体”变体(我称之为),或者使用impex通过运行时定义创建“动态”变量。只有具体的Variants可以直接在代码中使用(即使用instanceof),但不能与部署和更新系统一起添加。动态变体需要更聪明的编码来确定项目上的VariantAttributes,但这通常是一种更好的方法,并且更具可扩展性。

当然,有一种观点认为多级变体结构有点多余而且有点错误。变体没有“方向”。你不自然地导航产品>蓝色>小,您只需选择蓝色小产品。因此可以认为所有变异结构应该只有1级深度。

答案 1 :(得分:0)

例如,您需要一个变体产品来管理价格。对于某些颜色,产品可能比另一种颜色的成本更高。您无法在一个产品中管理此功能。您也可以为变体产品定义另一个描述/产品名称。使用变体产品比使用自定义产品更容易。