レールでアクティブなすべてのセッションのリストを取得する方法はありますか? メモリにキャッシュされたセッション リストがあり、基本的な管理目的でユーザー ID、ソース IP、タイム スタンプ、期間などを表示したいと考えています。
1991 次
1 に答える
2
私のコメントを拡張するために、私はあなたがやりたいことと似たようなことをしています。私は authlogic を使用していますが、他の認証パッケージでも同等のことができると思います。
私は authlogic の自動ログアウト機能を使用しており、120 分後にユーザーをログアウトするように設定しています。それを知っていれば、リストの生成は簡単です。私はただ次のことをします:
<% User.find(:all, :conditions => ["last_request_at > ?", 120.minutes.ago]).each do |user| %>
<li>
<%= link_to user.name, admin_person_path(user.bio) %>
(<%= mail_to user.email %>) <%= time_ago_in_words(user.last_request_at) %> ago
</li>
<% end %>
名前、電子メール、最後にリクエストを行った日時をリストしているだけであることがわかります。last_login_ip、current_login_at などを追加するのは簡単です。
お役に立てれば。
于 2012-04-22T04:29:04.490 に答える