如何在Rails中使用相对时间?

时间:2013-12-25 15:51:35

标签: ruby-on-rails ruby

我有Rails 1.9.3。我正试图在Rails库中使用相对时间。

我知道有一个方法time_ago_in_days,但我不知道在哪个文件中使用它,然后如何在我的Devise翻译中放置这种格式(这是正常的%d?)。

1 个答案:

答案 0 :(得分:0)

这是time_ago_in_days的文档,以下是一些示例。

time_ago_in_words(3.minutes.from_now)                 # => 3 minutes
time_ago_in_words(3.minutes.ago)                      # => 3 minutes
time_ago_in_words(Time.now - 15.hours)                # => about 15 hours
time_ago_in_words(Time.now)                           # => less than a minute
time_ago_in_words(Time.now, include_seconds: true) # => less than 5 seconds

from_time = Time.now - 3.days - 14.minutes - 25.seconds
time_ago_in_words(from_time)      # => 3 days

from_time = (3.days + 14.minutes + 25.seconds).ago
time_ago_in_words(from_time)      # => 3 days

这是一个视图助手,因此需要在视图上下文中调用它。默认情况下,它不适用于您的模型或控制器。

如果您需要在其他地方使用相同的功能,例如在/lib中的自定义类中,那么您可能需要检查源代码并在代码中重新创建该功能(您可以复制/粘贴该方法,但是你可能需要一种不那么通用的方法,这样你最终可能会得到一个更小的实现。)