我有一个配料/餐桌设置,其中X配料组合可以等于Y餐。
例如:‘胡萝卜,肉,卷心菜’= Meal Ingredients。
用户可以选择并添加他们自己的配料,然后制作一顿饭。我已经将这两个表都设置为many2many关系。我意识到我需要第三张桌子来添加每顿饭的配料,但我遇到的问题是成本。
例如:假设你想做一份三明治餐。你需要添加面包(1美元),肉(1美元)和一些奶酪(2美元)。这将使餐“三明治”4美元。
我遇到的问题是,我的餐桌有一个“成本”列,我的餐食配料链接到餐点有一个“成本”列,但必须首先创建餐点,然后选择配料,这意味着它还不知道总成本,因为配料排在最后。
我怎么能告诉mysql这顿饭的总成本是还没有放进去的配料呢?
发布于 2017-01-28 06:45:04
这取决于您是如何输入数据的,但是让我们假设您有一个用于meals的接口和一个用于meal-ingredients的接口(假设是用PHP语言编写的,因为您已经这样标记了它)。
我要做的是,当您更新或创建一个配料时,您要么使用一个触发器来更新meals.cost,要么让您的PHP脚本在插入/更新之后运行该查询。这样,您的cost应该始终是准确的。在字段的情况下,我会让它的默认值为0 (从技术上讲,没有配料的用餐是没有成本的)
https://stackoverflow.com/questions/41904168
复制相似问题