1

User がすでに UserSession オブジェクトを持っている場合、UserSession を作成できないことを保証するためのAuthlogic (ドキュメントを閲覧するものは何も見つかりませんでした)に簡単な方法はありますか?

つまり、ユーザーが同じ資格情報で 2 回ログインできないようにしたいのです。

更新: この問題の解決策を見つけるには、thief's answer のコメントを確認してください。

4

2 に答える 2

3

ユーザーセッションコントローラーで:

    before_filter :require_no_user, :only => [:new, :create]

アプリコントローラーで:

def require_no_user
  if current_user
    store_location
    flash[:notice] = "You must be logged out to access this page"
    redirect_to account_url
    return false
  end
end
于 2009-06-23T16:46:32.970 に答える
0

私の考えでは、よりクリーンなアプローチは、UserSession クラスでコールバックを使用することです。同様に、そこで before_create コールバックを定義し、適切な場合にモデルを無効としてマークすることができます。ただし、これを自分で試したことはありません。Callbacks モジュールのドキュメントは次のとおりです。

于 2009-06-23T17:01:48.443 に答える