为什么要创建created_at和updated_at?

时间:2015-10-16 09:58:19

标签: ruby-on-rails database

许多编程框架会自动将2个字段填充到模型/表/集合中。在Rails中,两个字段是 created_at updated_at 。字段的功能是不言自明的。

created_at

首次在数据库中创建记录的时间戳。

的updated_at

表中存储的任何数据的最新更改的时间戳。

我正在制作一个Meteor项目,该项目并非开箱即用,因此在我的项目中添加了 createdAt updatedAt

然后我开始思考:在什么情况下我们需要知道何时首次创建记录,是不是最后一次更新了?

3 个答案:

答案 0 :(得分:5)

  • 能够按最新/最旧的
  • 对记录进行排序
  • 能够显示有关对象的信息(如user asked 10 mins ago
  • 能够分析数据(例如检查询问问题的时间)
  • 当你想跟踪/调试/审核我们系统中发生的事情时,
  • 非常有用

..等等。当然,您的记录可能现在不需要它,但保存此信息总是更好,因为如果您现在不保存它,您将无法通过简单的方法来提供它。

答案 1 :(得分:2)

我认为有一些很多的情况,你想知道什么时候第一次创建。

以stackoverflow为例:

知道提问的时间很重要。如果你在两年前提出这个问题,然后在昨天进行了编辑,那与你昨天提出的问题有很大的不同。

知道何时回答问题很重要。想想一些徽章。 "好奇:在5个不同的日子里提出一个广受欢迎的问题,并保持积极的问题记录。"。如果有人重复我的所有问题会导致updated_at设置为今天。然后,我在不同的日子里向他们提问,他们似乎在同一天回答。

这只是两个例子。一般答案是:只要您想知道系统中首次存在的对象何时需要created_at。特别是如果您将要更新该对象。

答案 2 :(得分:1)

并非每张桌子都需要这些。如果您没有明确的用例,请不要添加。您的数据库和应用程序将从计算,存储和读取它们中获得额外的性能损失。