市面上有很多功能強大、發展成熟的商城網站系統,但是由于真的功能太過于強大,導致網站操作非常困難,維護也很麻煩,并不是我們所期望的輕量級。所以,我們一直想要開發一套簡單易用的商城網站,最近終于有時間來著手這件事,做數據結構時遇到的第一個難題就是商品多屬性多規格。今天我們就從可行性分析的角度來簡單聊一下這個問題的解決思路。
解決問題的核心:SKU(庫存量單位)
當我們拿著常規的思路來做數據結構的時候,我們發現,當管理員需要在網站中添加一部iPhone 8 plus手機的時候,如果將所有顏色、容量全部兩兩組合成對后,需要添加很多個這樣的商品,例如:銀色64G、銀色256G、深空灰64G、深空灰256G、金色64G、金色256G、紅色64G、紅色256G,一共8個產品,當我們把這一款手機的不公有屬性(如:顏色、容量)全部抽取出來之后,組合成的稱之為單品,即SKU。這個時候我們為不同的SKU設定不同的價格、庫存、單品編碼,就可以在添加一款商品的時候,一次性編輯好所有的單品信息,使用起來非常方便高效。
添加和編輯商品時的SKU原型邏輯
編輯完某一款商品的所有共同屬性之外,再通過簡單的選擇屬性,而生成多種不同的SKU,然后分別設定該SKU的價格、庫存數量、銷售編碼等信息,這樣我們就可以精確統計到銷售情況和庫存情況。當我們某一款商品規格有增加、刪除的時候,則需要通過商品編輯頁面,實現一次性編輯所有信息,包括商品共有屬性和SKU對應的價格、庫存數量等資料。所以,在編輯頁面的時候,SKU應該分成兩部分,一部分為歷史SKU數據,一部分為新添加的SKU數據,歷史數據在表單提交的時候做修改,新添加的數據在表單提交的時候做新增操作。在生成新的SKU數據時,應該比對歷史SKU數據,以避免產生重復的SKU數據。我們這里簡單做一個添加價格信息的原型界面,給大家參考:
商城網站是一套非常復雜的項目程序,我們需要從無到有,一步一步開發出方便、輕量、利于優化推廣又安全的程序。相信在這個項目上,我們還有很長的一段路要走,也許我們現在的規劃還不夠完美,但是經過優化迭代,必將呈現一套符合我們預期的產品,敬請關注玉律做網站的公司創絡的最新動態。