电商|电商后台设计:属性管理

编辑导语:电商平台上出售着各种各样的商品,买家通过读取这些商品的属性介绍才能了解它的信息,确定自己需不需要、适不适合。电商平台中商品数量庞大,各商品的属性又千差万别,所以设计一套可复用的属性管理功能就很重要。本文作者以此为出发点,为我们详细的概述了电商后台设计的属性管理。
 电商|电商后台设计:属性管理
文章图片
上篇文章我们介绍了商品品类功能,在介绍后端品类管理的时候,遗留了一个属性设置功能,本篇我们来梳理一下这个功能。
在介绍具体功前我们先来理解一下什么是属性,什么是属性值?
属性是对事物特性的一种描述,属性值则是具体的描述词。
比如:我们写简历时,都要填写以下几项内容:姓名张三、性别男、年龄20岁、身高170cm等;再比如售货员为顾客推荐衣服时会介绍:这件衣服是羊绒材质、售价2000元等等。
这里面的性别、年龄、身高、材质、售价就是属性,而男、20岁、170cm、羊绒、2000元则是对应的属性值。
通过这些属性和属性值的描述我们就能了解到这个人和这件衣服的具体信息,当描述的属性和属性值越多时,这个事物展现在我们大脑中的形象就越清晰。
同理,电商平台上出售的是各种各样的商品,通过读取商品的属性介绍才能了解它的信息。电商平台中商品数量庞大,各商品的属性又千差万别,所以就需要设计一套可复用的属性管理功能就很重要。
首先,我们先找几款商品,看看它们的属性之间都有什么特点和关联。
下面是几款不同类型商品的对比:
 电商|电商后台设计:属性管理
文章图片
一、数据分析
通过对上述三款产品的属性对比,我们可以得到几个结果:
不同的商品有部分相同属性,如标题、品牌、品类
不同的商品它们各自独有的属性,如手机有内存、鞋子有尺码、手表有机芯
不同商品的相同属性,其中的属性值可能相同,如在颜色属性中手机和手表都有黑色
有部分属性参与了商品的销售价格,如手机的内存,不同大小的内存价格是不一样的。
对于属性值,部分没有规律,可以随意填写,如标题、产品简介;部分是规律的,它们的值通常是有限的,我们可以一一整理出来,如使用人群(女士、男士、全部)、内存大小(8G、16G、32G、64G、128G、256G)
有些商品的属性可以很多,有些则很少。如电子产品、汽车等,它们的参数通常都有几十项,而文具用品它们就很少。
二、数据分类
通过上面的数据分析,我们可以看到不同商品的属性差异化还是很大,系统设计时为了方便管理,根据用途我们将它们分成四类:
基础属性:所有的商品都有的通用属性,如标题、品牌、品类等
销售属性:影响商品销售价格的属性,不同类型的的商品销售各不相同,如手机的颜色、内存等
搜索属性:参与到商品搜索中的属性,如标题、品牌、品类等
特有属性:不同商品各自所独有的属性,如鞋子的使用人群、鞋面材质,手表的机芯等
在上面的分类中,可以发现有些属性用途并非单一的,如品牌、品类除了基础信息的展示外,还可以参与搜索。
在功能设计时,基础属性、销售属性都有明确的、可列举出来属性,所以各自有对应的功能对数据进行单独的维护。
而搜索属性属于对数据的应用,所以它的部分功能写在代码逻辑里,另一部分则在特有属性中设置。
对于特有属性,它的属性主要和商品相关,所以我们需要根据不同的商品单独设计,下面我们就特有属性做功能分析。
三、功能分析
1. 属性关联品类
特有属性虽然和商品有关,但是有一个共同特性,相同品类的商品它们所有拥有的特殊属性基本相同,针对于这个特性,我们通常将产品的特殊属性和品类绑定在一起。
当商品在基础属性中设置对应的品类后,就可以关联获得已绑定的所有特殊属性配置。
2. 属性继承
在上一篇文章品类管理中,我们知道了品类通常是以树形结构来维护的,上面我们又分析了属性和品类是绑定在一起的,为了避免重复添加属性,就会设计一个继承功能,子集品类属性会默认继承所有父级品类已绑定的属性。
在这里说了题外话,就是这个继承功能本身是好的,但是由于内部的逻辑比较复杂(涉及到了数据递归、去重等),开发成本和后期的维护成本都比较大。
所以我通常采用一种折中的方案,当添加子集品类时,将父级品类已绑定的属性给子集品类复制一份,这样子集品类也能单独维护自己的属性,之后只需要做较少的调整就能达到和继承同样的效果,而开发和维护比继承方式简单很多。
3. 属性组
由于部分商品的属性繁多,如电子产品、汽车等,为了方便用户浏览对比数据,通常会对属性进行分组管理。
【 电商|电商后台设计:属性管理】 电商|电商后台设计:属性管理
文章图片
4. 是否参与搜索
为了能更精准的搜索到用户的商品,除了基础属性(如标题、品牌、品类)参与搜索外,部分特有属性也会参与到搜索中,如手机的分辨率、摄像头数量、服装的材质、图案等。


推荐阅读