我正在将Omniauth添加到我的应用程序中,我正在使用Clearance进行常规身份验证。我在尝试用程序登录用户时遇到了一堵墙。
我正在从Devise找类似sign_in_and_redirect
的东西,但在Clearance中找不到。
我试过使用sign_in <User>
,然后立即调用redirect_to root_path
。但是,当加载根页面时,不会设置current_user
。
有人知道怎么做吗?有人知道在Clearance中添加Omniauth的教程吗?
感谢
我还没有使用Clearance,我通常使用自己的身份验证或使用Devise,但快速浏览代码告诉我,sign_in(@user)只不过是设置@current_user=@user,所以在重定向之前,您需要某种方法来保持这些信息。Clearance似乎对此使用了remember_token,所以我会尝试(未经测试)这样的东西:
sign_in(@user)
cookies['remember_token'] = @user.remember_token
redirect_to(root_path)