Как вывести всех пользователей онлайн Ruby on Rails?
# app/controllers/application.rb
after_action :user_activity

private

def user_activity
  current_user.try :touch
end# app/models/user.rb
ONLINE_PERIOD = 5.minutes

scope :online, -> { where('updated_at > ?', ONLINE_PERIOD.ago) }

def online?
  updated_at > ONLINE_PERIOD.ago
end
Использование:User.online # все пользователи онлайн
Devise нужен для авторизации и только. Пишите свой модуль.