如何实现不同重量的相同产品

时间:2016-10-05 08:49:21

标签: php mysql

我不知道这个问题是否应该在这里,但我没有看到任何其他地方适合问我的问题。

看,我正在开发一个显然出售食品,零食,蛋糕和甜点的在线食品门户网站。当我必须出售一种可以存在各种重量的蛋糕时,真正的交易出现了,例如0.1|0.5|0.9|...4.5和每一个其中一个成本不同。此外,它们中的每一个都在仓库中以不同的数量存在。

我实现这一目标的解决方案是为每个变体提供不同的行

ID | product_code | product name | Quantity | price | weight | company_id 
1  |  12345       | beer cake    |   34     |345    |0.5     |343434defee
2  |  12345       | beer cake    |   343    |600    |1.0     |343434defee
3  |  12345       | beer cake    |   4      |845    |1.5     |343434defee
4  |  12346       | vodka cake   |   341    |345    |0.5     |343434deereee

在这里,我将每个产品看作不同的产品,我使用产品代码提供了关系,而在每一行的不同时,我选择id,product_code作为主键。

但是,使用这种方法也需要减少,每一行看起来都是不同的产品。所以,如果我使用php显示它们,它会将它们显示为不同的产品。

像这样,

enter image description here

如何更改我的数据库结构,以便在同一个项目上实现单个产品但具有不同的变体选项?

我可以使用php解决方案,如果有的话。

此致

BOTjr。

1 个答案:

答案 0 :(得分:3)

将表格分成两个,product_code作为外键。

Table One
    ID | product_code | product name | company_id 
    1  |  12345       | beer cake    |343434defee
    2  |  12346       | vodka cake   |343434deereee

Table Two
       Product_code |Quantity | price | weight 
       12345        |  34     |345    |0.5 
       12345        |  343    |600    |1.0 
       12345        |  4      |845    |1.5 
       12346        |  341    |345    |0.5 

使用Table One显示项目,使用Table Two是产品说明页面选择正确的数量