如何将设计/ omniauth重定向到我登录的页面?

时间:2011-06-18 15:03:21

标签: ruby-on-rails devise omniauth

我通过omniauth进行身份验证,并且每个页面都可以通过layout / application.html.haml获得该链接。

但是,当他们完成omniauth身份验证时,他们都会转到root。

如何设置它以便重定向到他们点击身份验证链接的实际页面(将其带到oauth提供程序)。

由于

2 个答案:

答案 0 :(得分:10)

您可以使用request.env['omniauth.origin']

请参阅https://github.com/intridea/omniauth/wiki/Saving-User-Location

答案 1 :(得分:4)

我在这里看到两个选项:

1)在您可能通过以下方式登录的每个页面上设置会话变量:

session[:return_to] = request.fullpath

并在登录后重定向回来:

redirect_to session[:return_to]

2)尝试

redirect_to :back

这取决于你如何链接你的控制器动作(没有使用omniauth,所以我没有这方面的经验)