一種靈活的商品屬性集實現思路

2022-01-23 15:24:42 字數 1410 閱讀 1446

在一些商務系統中會對商品的屬性進行管理,方法有很多,可參考文章商品sku分析和設計。在這裡,我分享一種更靈活的實現思路。

商品屬性設計為公用,屬性由屬性集管理,屬性集也是公用的,如下:

1. 先定義屬性 attribute

這個表只是定義屬性的名稱。

2. 定義屬性具體的值 attribute_value

其中attribute可直接用attribute表中的id,這裡用name只是更好的體現其關係。

3. 定義屬性集 attributeset

屬性集一般是根據商品來定義的,如衣服的屬性集,手機的屬性集等等。

4. 定義屬性集的值(即屬性集中包含哪些屬性)attributeset_value:

其中attributeset和attribute欄位可用具體表中的id。

以上四個表完成對商品屬性和屬性集的定義。

在具體的商品中卻不能直接使用attributeset_value,因為attributeset是公用的。

5. 定義屬性集例項化 attributesetinstance:

衣服的屬性集一般包含顏色和尺寸,但是每種衣服的顏色和尺寸(value)肯定有所不同,因此例項化乙個coat的屬性集,它的具體值用下表來實現:

6. 定義屬性集例項值 attributesetinstance_value:

其中coat被例項化兩次,它的屬性及其value是不同的。

此時,商品就可以關聯attributesetinstance的id,進而實現了它的屬性(attributesetinstance_value)。

這種實現方式,屬性和屬性集都是可隨時擴充套件的,而具體的商品在使用屬性集時,通過其實例化來關聯,也沒有與屬性集做強依賴,可算一種靈活的實現思路。

一種輕便且靈活的js模板的思路

在vue react angular等大前端框架異軍突起的今天,寫前端時已經很難用得上普通模板引擎了。因為這些框架都自帶dom渲染的功能,甚至由於虛擬dom技術的存在,使得dom渲染的效率比普通模板引擎更高。但是在某些場景,仍然有用模板引擎的需求,比如寫外掛程式之類的 我就是在寫外掛程式的時候想到這...

一種計算留存的思路

在一些統計系統中,為了觀察使用者的粘度,我們會計算一系列的叫做留存的指標 次日註冊留存 2日註冊留存.n日註冊留存,比如昨天註冊了1000名使用者中,在今天有300名使用者又登入了,那麼對應於昨天的註冊留存就是30 如果再去細究,還可以去計算活躍使用者的留存情況,比如昨天登入的1000名使用者中,在...

學習知識的一種思路

昨天看到王垠博士的思維導圖,裡面有個很重要的概念就是學習知識分類,然後不斷的細化下去。聽說寫作也是一樣,作家也是先寫好提綱,然後一點點填充內容。看到這個讓我想起了禪與電單車裡作者對科學,對文學的學習方法,其實就是分類,然後再對子節點進行分類。其實大多數人都是在做別人早都研究出來的東西,用生活大 裡的...