【问题标题】:Database Design for product prices depending on time of a day产品价格的数据库设计取决于一天中的时间
【发布时间】:2025-11-21 07:10:02
【问题描述】:

我正在构建一个具有标准产品/类别设置的食品订购 Web 应用程序 - 一个类别(例如比萨饼)包含许多产品(比萨萨拉米香肠)。

Category
--------
id
name

Product
-------
id
name
category_id

问题:一个类别的价格取决于一天中的时间。例如,下午 2 点到 6 点和晚上 9 点到 11 点,比萨饼的价格更便宜。

如何有效地设计价格表和关系?

【问题讨论】:

    标签: ruby-on-rails database database-design relational-database


    【解决方案1】:

    如果您的定价是可预测的,您可以在产品表中放置一个“基本价格”属性,然后从代码中读取它,并根据时间计算“最终价格”。然后,您将该最终价格存储在您的订单表中。 但是,如果您希望能够从数据库中读取最终价格,我建议您查看您的数据库文档,了解如何创建函数和视图。

    【讨论】: