電子商務網站針對不同類別的產品顯示不同的字段。這意味着他們實現了一個動態模式。什麼技術用於這種動態模式?電子商務中的動態模式
我知道使用EAV模型的Magento。其他框架,如ATG,Broadleaf,IBM Websphere商業等有沒有其他選擇?
感謝
電子商務網站針對不同類別的產品顯示不同的字段。這意味着他們實現了一個動態模式。什麼技術用於這種動態模式?電子商務中的動態模式
我知道使用EAV模型的Magento。其他框架,如ATG,Broadleaf,IBM Websphere商業等有沒有其他選擇?
感謝
延伸產品具有特定類別的屬性在ATG通常使用的方法是延長product
庫項目描述符。
通常,您將爲類別特定產品創建新的子類型產品,併爲每個類別特定的屬性添加屬性。
例如,您可能要定義一個「電視產品」子類型的產品,其中有一個屏幕大小的屬性
默認情況下,只有一種類型的product
。這一事實表示爲type
財產沒有選項。
<property name="type" data-type="enumerated" column-name="product_type" writable="false" hidden="true"> </property>
您可以擴展它以表示多種類型和子類型。
<property name="type" data-type="enumerated" column-name="product_type" writable="false" hidden="true">
<option value="tv"/>
<option value="option2"/>
</property>
然後,你可以定義你的亞型項目描述爲
<item-descriptor name="tvProduct" super-type="product" sub-type-value="tv">
<!-- properties -->
</item-descriptor>
然後你就可以在你的亞型增加property
和table
元素來代表特定類別的特性,如screenSize
。
從此,您可以像處理任何其他類型的產品一樣處理tvProduct
。他們會在任何查詢中出現類型爲product
的物品 - 但是當您擁有tvProduct
的實例時,它將具有額外的screenSize
屬性。
闊葉,有2種方式來添加自定義屬性:
ProductImpl
Hibernate的實體表而代之。在燈架上有一個很好的教程在http://www.broadleafcommerce.com/docs/core/current/tutorials/core-tutorials/extending-entities-tutorialProductImpl
和SkuImpl
)都映射屬性附加到他們,你可以無需創建一個新表或新的子類中添加自定義屬性地圖。隨着闊葉自定義字段模塊(商用模塊),這些新的動態字段可以在管理形式自動顯示