Period of Time with Ruby on Rails and Integers | ActiveSupport::Duration
From the rails console try next:
irb(main):001:0> period_of_time = 10.minutes
=> 10 minutes
irb(main):002:0> period_of_time.class
=> ActiveSupport::Duration
irb(main):003:0> period_of_time = 10.hours
=> 10 hours
irb(main):004:0> period_of_time.class
=> ActiveSupport::Duration
irb(main):005:0> period_of_time.to_i
=> 36000
Useful when you work with devise
authentication gem, e.g to expire the session in a certain period of time.
class User < ApplicationRecord
devise :database_authenticatable, :timeoutable,
timeout_in: ENV['EXPIRATION_TIME_IN_MINUTES'].to_i.minutes || 10.minutes
end
And so on...
User.where(created_at: 20.days.ago..10.minutes.ago)