"Ago" date/time functions in Ruby/Rails "Ago" date/time functions in Ruby/Rails ruby ruby

"Ago" date/time functions in Ruby/Rails


You can use:

10.minutes.ago2.days.since

Or in your views you have the helpers:

distance_of_time_in_words(from_time, to_time)time_ago_in_words(from_time)

Check the API for details and more options.


You can use available methods to get the time in past or future using ago, since alias for from_now and many available methods

Time.current#=> Tue, 20 Sep 2016 15:03:30 UTC +00:002.minutes.ago#=> Tue, 20 Sep 2016 15:01:30 UTC +00:002.minutes.since#=> Tue, 20 Sep 2016 15:05:30 UTC +00:00 1.month.ago#=> Sat, 20 Aug 2016 15:03:30 UTC +00:001.year.since#=> Wed, 20 Sep 2017 15:03:30 UTC +00:00 

Check all the available methods in Time class


distance_of_time_in_words:

from_time = Time.nowdistance_of_time_in_words(from_time, from_time + 50.minutes) # => about 1 hourdistance_of_time_in_words(from_time, 50.minutes.from_now) # => about 1 hourdistance_of_time_in_words(from_time, from_time + 15.seconds) # => less than a minutedistance_of_time_in_words(from_time, from_time + 15.seconds, include_seconds: true) # => less than 20 seconds

time_ago_in_words:

time_ago_in_words(3.minutes.from_now) # => 3 minutestime_ago_in_words(3.minutes.ago) # => 3 minutestime_ago_in_words(Time.now - 15.hours) # => about 15 hours