Timeoutable takes care of veryfing whether a user session has already expired or not. When a session expires after the configured time, the user will be asked for credentials again, it means, he/she will be redirected to the sign in page.
Timeoutable adds the following options to devise_for:
* +timeout_in+: the interval to timeout the user session without activity.
user.timedout?(30.minutes.ago)
Checks whether the user session has expired based on configured time.
# File lib/devise/models/timeoutable.rb, line 28 def timedout?(last_access) return false if remember_exists_and_not_expired? !timeout_in.nil? && last_access && last_access <= timeout_in.ago end
# File lib/devise/models/timeoutable.rb, line 33 def timeout_in self.class.timeout_in end
# File lib/devise/models/timeoutable.rb, line 23 def self.required_fields(klass) [] end