如何分享不会改变该点的尺寸,以便在相同尺寸下的价格不同?
问题描述:
如何为具有多种不同尺寸的产品设置DRY数据库,并且每个单独产品的价格与所有其他产品的价格不同并且取决于其尺寸?如何分享不会改变该点的尺寸,以便在相同尺寸下的价格不同?
例子:
那不勒斯(小$ 9.95),(中等$ 10.95),(大$ 11.95),(X-大$ 13.50),(XX-大$ 29.95)
素食的梦想比萨(小$ 13.50) (中等$ 15.50)(大$ 17.50)
夏威夷披萨(小$ 11.95)(中等$ 13.50)(大$ 14.95)
所以一个管理员把一个那不勒斯比萨饼在他们的数据库,他们将键入的名字项目,然后从下拉菜单中选择第一个尺寸a nd增加它的价格,然后能够增加5个尺寸和相应的价格,而不必重写那不勒斯比萨5次。这些尺寸都将被引用回那不勒斯比萨,你将能够发现不同尺寸的那不勒斯比萨的价格。此外,素食和夏威夷比萨将能够重新使用大小有限的选项,并按大小搜索价格。
顾客将能够看到那不勒斯比萨及其六种尺寸的列表,只需点击一张即可添加到购物车中。
我不是问如何做下拉或任何前端只是一种干的方式来设置数据库。
我之前问过这个问题,但没有得到答复。我仍然在努力寻找解决这个问题的方法。这是我以前的question。
答
如何将带有json数据类型的列添加到比萨饼模型中,其中键的大小和价格与值一样?
喜欢这个:'Product.create(name:“Neapolitan”,sizes:{small:“9.95”,medium:“10.95”,large:“11.95”,xlarge:“13.50”,xxlarge:“29.95”} )'?如果这就是你的意思,是否有办法让这些键成为创建任何产品之前选择的唯一选项? – Lenocam
初始化一个可以在表单中用于管理的常量键/大小数组,并冻结像VARIANTS = ['small','medium','large','xlarge','xxlarge']这样的可用变体。冻结“并循环以从表单中获取值。 –