如何计算created_at剩余3天的时间

时间:2013-06-06 19:59:24

标签: ruby-on-rails ruby-on-rails-3

我试图向用户显示他的个人资料中有多少时间重新出现。一般来说,我想在隐藏数据前3天这样做。

我知道我可以通过 - 3.days.from_now获得未来约会。但那不是我想要的。

如何显示,与数据库中的created_at相比,重新生成了多少天?获取mysql数据库的格式为2013-06-06 19:41:02 UTC。现在我想显示此created_at日期和时间的时差(以天为单位)。

感谢任何帮助

3 个答案:

答案 0 :(得分:2)

((user.created_at + 3.days).to_date - Date.today).round

答案 1 :(得分:1)

ActionView has you covered

> Rails.helper.distance_of_time_in_words_to_now(3.days.from_now)
=> "3 days"

> Rails.helper.distance_of_time_in_words_to_now(8.hours.from_now)
=> "about 8 hours"

> Rails.helper.distance_of_time_in_words_to_now(12.weeks.ago)
=> "3 months"

答案 2 :(得分:0)

你应该可以这样做:

my_item.created_at + 3.days