Ruby:减去两个日期以获得更新

时间:2015-08-12 11:17:04

标签: ruby-on-rails ruby date time

我正在寻找一种减去两个日期的方法。我不确定常规的-是否适用于此。如果帖子在5年前更新过,我仍然需要它显示Updated 5s ago而不是0h0m5s ago。同样适用于Updated 3min ago,我不希望它显示秒数或小时数。

所以我需要更新的at与最小精度的时间单位一样精确,不等于0。

  • 如果帖子更新时间不到1秒,请立即显示

  • 如果帖子已更新< 1分钟前,但是> 1秒前有格式#s

  • 如果帖子已更新< 1小时前,但是> 1分钟前有格式#m

  • 如果帖子已更新< 1天前,但是> 1小时前有格式#h

  • 如果帖子已更新< 1个月前,但是> 1天前有格式#d

  • 如果帖子已更新< 1年前,但是> 1个月前有格式#m

  • 如果帖子已更新> 1年前有格式#y

如果我不够清楚,请告诉我。

谢谢。

2 个答案:

答案 0 :(得分:1)

在视图中尝试此操作

<%= time_ago_in_words(@post.updated_at) %>

答案 1 :(得分:1)