2

deviseを使用してRailsアプリにアクティブにログインしているユーザーの数を把握する方法はありますか?

レール3.1

gem'devise'、'〜> 1.4' gem'dm-devise'、'〜> 1.5'

with:データベース認証可能

特にルビーコードを探しています。

4

2 に答える 2

3

ログインに関連するすべての情報はセッションで処理されるため、すぐに使用できる簡単な方法はありません。この情報を管理するには、ApplicationController で何かを行うことをお勧めします。

多くのアプリケーションで before_filter を使用して、各ページ要求に関する非常に具体的な情報を追跡します。ヒットしたページ、ヒットした時間、ヒットしたユーザーを追跡するために、同様のことを行うことができます。

次に、ログインしているユーザーを特定することは、ログインしていると見なされるために最後のページ読み込みからどれくらい前でなければならないかを特定するのと同じくらい簡単です。次に、それに基づいてビューのテーブルを選択します。何かのようなもの

MyPageView.select(["DISTINCT user WHERE created_at > ?", my_threshold_time]) は、個別のユーザーを提供します。

于 2012-08-13T15:47:25.457 に答える
0

これについてブログ記事を書きました。これは職場で行う必要がありましたが、このソリューションは私たちのニーズに合っているようです。

ユーザー モデルに last_request_at と logged_in を追加する必要があります。last_request_at は、リクエストの user_session 情報から取得できます。Logged_in は、sign_in / sign_out で設定する必要があります。

于 2016-03-19T15:43:29.277 に答える