首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >膳食和产品.柔性设计

膳食和产品.柔性设计
EN

Stack Overflow用户
提问于 2017-12-17 16:22:00
回答 1查看 51关注 0票数 1

我正在努力学习SQL和实体框架( entities ),为了做到这一点,我想创建一个应用程序来帮助管理膳食,但是我有一个问题,要为我的实体做一个灵活的设计。我考虑过在一个名为Products的表格中存储每100克产品及其营养特性的信息。问题是,用户应该能够选择产品(从产品表),然后设置一个吃的数量,并将其添加到他们的膳食。因此,用户应该在膳食计划中看到营养特性适当地乘以给定数量的产品。

示例:

1.给定产品的记录:{ProductID: 1,名称:“鸡”,数量: 100,千卡数: 99,蛋白质: 20,碳水化合物: 0,脂肪: 1.3}

2.使用者:吃了250克鸡肉。

3.输出: {MealID: 1

ProductID: 1,数量: 250,千卡数: 247.5,蛋白质: 50,碳水化合物: 0,脂肪: 3.25,

其他产品

我不知道是否应该创建另一个表来存储那些具有用户定义的数量的产品,还是应该根据这个数量和产品的记录来计算它。我知道我们不应该存储副本,所以想要另一张桌子似乎很糟糕。我会感谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-18 14:12:22

虽然营养价值与产品直接相关,但我会将营养信息分离到自己的表格中,每个营养价值都作为自己的记录(而不是列)。

代码语言:javascript
复制
Product:
ProductID
ProductDescription

Nutrition:
NutritionID
NutritionDescription

NutritionValues:
ProductID
NutrionID
ValuePer100Grams

这允许您在不更改模式的情况下为产品添加新的营养价值,因为它只是在营养和NutritionValues表中添加另一条记录,而且也不要求每个产品都有每个营养属性的值输入。

我还建议使用ServingSize表来确定产品的乘数,以便将服务大小转换为100克。

代码语言:javascript
复制
ServingSize:
ProductID
GramsPerServing

这将允许您的用户灵活地输入食物的数量(一片面包),并为他们处理转换为克的过程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47857062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档