不一樣分類的商品動態添加屬性(吳康彬發表於2009-2-9 10:32:35)

在開發多用戶的購物平臺時,常常會碰到徹底不一樣類型的幾種產品,他們的屬性不少都是不同的。因此,在設計數據庫的表字段時,不可能一個個都列出來。由於不少時候,產品的屬性都不定的。下面我給你們講解下,如何給不一樣分類的商品動態添加屬性。
    下面列舉下幾種不一樣的產品類型:
    女裝、鞋子、手機、遊戲卡、化妝品等等
    女裝的屬性有:顏色、尺碼、腰圍、胸圍、價格、季節、面料、品牌、產地等等
    鞋子的屬性有:顏色、尺碼、跟高、樣式、品牌、季節、材料、價格、產地
    手機的屬性有:基本參數、產品外形、拍照功能、娛樂功能、顏色、尺寸、產地、價格、品牌、生產時間等
    化妝品的屬性:型號、材質、產地、出廠日期、保質期、品牌、價格、尺寸、規格、顏色等
    看看,就這麼幾個分類,已經有那麼多的屬性。你們仔細看看,其實這些屬性當中有幾個屬性是你們都有的,好比:顏色、尺碼、價格、產地、品牌等。另外的幾個都是私有的屬性。
    而後再看,不少屬性其實數據是定死的,就是說能夠把屬性的值列舉出來:
    好比說
    顏色:能夠分:紅色,白色,綠色等。
    產地:浙江杭州、廣東廣州。
    品牌:攜購網、攜購獨立網店系統等
    咱們把這些統稱爲實例數據,固然相反,也有不少屬性咱們必須是要手動錄入數據的。包括拍照功能、腰圍、適合年齡範圍等。
    接下去,咱們使用C# 的類來說解具體的設計思路:
    產品類別的類定義:
   public class Category{
      public int m_id; //類別的ID
      public string m_name ; //類別名稱
      public string m_root;  //類別的路徑,->0->1->2->
      public int m_parent; //父級的Id
      public int m_depth; //路徑深度
   }


    類別屬性類的定義:
   public class Attribute{
      public int m_id; //屬性的ID
      public int m_name ; //屬性的名稱
      public string m_value; //屬性值
      public int m_type; //屬性的類型,單行文本,選擇框,多選框,多行文本等等。這裏能夠隨便你設置,
   }


    屬性實例類的定義:
   public class Instance{
      public int m_id;  //屬性實例的ID
      public string m_name;  // 屬性實例的名稱
      public string m_value;  //屬性實例值
      public int m_attributeId;  //屬性ID
   }


    最後咱們須要定義一個產品類別與屬性對應的類:
   public class CateAttribute{
      public int m_id;  //編號ID
      public int m_attributeId;  //屬性的ID
      public int m_cateId;   //類別的ID
   }

    有了以上的關係表以後,咱們就能夠在後臺動態、任意的增長屬性到對應的類別了。該表(類)的定義由國內優秀的獨立購物網店系統供應商ShopXG攜購網提供,在這裏表示感謝!數據庫

相關文章
相關標籤/搜索