質問

Authlogic に簡単な方法はありますか? a href = "http://authlogic.rubyforge.org/" rel = "nofollow noreferrer">ドキュメント)へ ユーザーがすでにUserSessionオブジェクトを持っている場合、UserSessionを作成できないことを保証しますか?

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

更新:泥棒の答えに対するコメントを確認して、この問題の解決策を見つけてください。

役に立ちましたか?

解決

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

    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

他のヒント

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top