要件を知らなければ、質問が非常に広範であり、スキーマが正しいかどうかわからないため、これは少し難しいでしょう。スキーマが正しくない場合は、苦労している理由が説明されます。
私にはまったく意味のないコラムがあります。たとえば、category_id
上にproduct
と がありsize
ます。次に、とprice
をリンクするテーブルがありますが、 が に一致する制約が必要ですか?product
size
size.category_id
product.category_id
データベースとショッピング カートについて知っていることを踏まえて、スキーマを次のように記述します。
Categories
id
name
description
active
created
modified
Sizes
id
name
Products
id
name
description
price
active
offered
created
modified
Categories_Products
id
category_id
product_id
Products_Sizes
id
product_id
size_id
price
Toppings
id
name
description
price
active
created
modified
Categories_Toppings
id
category_id
toppings_id
Sizes_Toppings
id
size_id
topping_id
price
説明
- イニシャル
Product
には基本価格があります。
- それぞれは、HABTM 関係を通じて
Product
N に関連付けることができます。Categories
- それぞれは、HABTM 関係を通じて
Product
N に関連付けることができます。Sizes
- HABTM
Product_Size
テーブルには、サイズの価格調整が格納されます。
- イニシャル
Topping
には基本価格があります。
- それぞれは、HABTM 関係を通じて
Topping
N に関連付けることができます。Categories
- それぞれは、HABTM 関係を通じて
Topping
N に関連付けることができます。Sizes
- HABTM
Size_Topping
テーブルには、サイズの価格調整が格納されます。