【发布时间】:2019-08-01 18:22:05
【问题描述】:
我有一个关于我正在为我的软件开发课程做的项目的数据库设计的问题。
我有一个表来存储“采购订单”,每个采购订单都与一个“状态”表存在多对一的关系。因此,每个采购订单都可以有一个状态,例如:“未结请求”、“收到货”、“收到发票”等。
嗯,一切正常;但是,我希望存储状态字段更改的历史记录。因此,当它更改为“收到货物”时,何时更改为“收到发票”或任何其他状态。
我想我需要创建一个新表来存储这些?如果是这样,我不确定如何实现这一点,以及如何将所需的逻辑构建到我的 Web 应用程序中。我从头开始学习一切,所以我不确定这个逻辑是否应该在我的 laravel 项目(MVC)的控制器中,或者数据库是否能够处理这个 - 例如它能够在主控时级联删除记录记录被删除。
我的主要问题是我不知道这种类型的问题是否有名字,所以我也在努力用谷歌搜索它。
非常感谢任何帮助,谢谢。
【问题讨论】:
-
github.com/VentureCraft/revisionable 你可以看看这个库,看看它应该如何工作的一个很好的例子。
-
您想要当前的“状态”吗? (使用同一张表。)还是对“状态”的所有更改逐一进行? (使用不同的表格。)
标签: mysql database model-view-controller database-design