Rails / Devise: определить общее время входа пользователя в систему - PullRequest
2 голосов
/ 12 октября 2011

Какие-либо предложения по эффективному хранению общего времени, в течение которого пользователь вошел в систему с помощью Devise? Помимо отслеживания количества входов в систему, не похоже, что в Devise уже есть процесс для этого.

Спасибо!

class User < ActiveRecord::Base

  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable, :timeoutable

end

1 Ответ

3 голосов
/ 12 октября 2011

Вопрос, требующий ответа: «Как вы узнаете, когда пользователь вышел из системы?».

В простом случае пользователь нажимает ссылку выхода из системы. Затем вы можете получить временную метку этого события во время уничтожения пользовательского сеанса. Простое сравнение отслеживаемой временной метки с временной меткой уничтожения пользовательского сеанса дает вам общее время.

Однако что произойдет, если пользователь просто закроет вкладку / окно / браузер с запущенным приложением? Этот пользователь автоматически вышел из системы? Есть ли набор файлов cookie, который позволяет указанному пользователю вернуться без входа в систему? Если да, значит ли это, что открытие страницы в приложении означает, что пользователь все еще вошел в систему через 3 дня?

Как только вы ответите на эти вопросы, я думаю, что подход сделает вас видимым.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...