2

通常の認証にクリアランスを使用しているアプリにOmniauthを追加しています。プログラムでユーザーにサインインしようとして壁にぶつかりました。

sign_in_and_redirectDeviseのようなものを探していますが、Clearanceで見つかりません。

すぐに使っsign_in <User>て電話してみました。redirect_to root_pathただし、ルートページが読み込まれると、current_userは設定されません。

誰かがこれを行う方法を知っていますか?Omniauthをクリアランスに追加するためのチュートリアルを知っている人はいますか?

ありがとう

4

1 に答える 1

3

私はClearanceを使用していません。通常、自分の認証をロールするか、Deviseを使用しますが、コードをざっと見ると、sign_in(@user)は@ current_user = @ userを設定するだけなので、永続化する方法が必要です。リダイレクトする前にその情報。クリアランスはこれにremember_tokenを使用しているように見えるので、次のようなものを(テストせずに)試してみます。

sign_in(@user)
cookies['remember_token'] = @user.remember_token
redirect_to(root_path)
于 2012-03-03T11:37:35.100 に答える