我试图将一个参数传递给omniauth回调,但我遇到了问题。 当用户选择注册到我的网站时,他必须选择他是否是青少年的成年人,然后显示注册表单。如果他选择与facebook连接一起使用,在他点击facebook连接后,注册表单将显示在回调页面上,但除了密码之外,所有字段都填充了他的信息。 我也想找回他的成人/青少年选择,但不知道该怎么做。 我正在使用omniauthable设计,这就是我所做的:
Facebook Connect链接:
<%= link_to image_tag("connect-w-facebook.jpg", alt: "Connect with Facebook"), omniauth_authorize_path(:user,:facebook,{var: 'adult'}), :id =>"logo", :class =>'connect-face- img' %>
所以我现在硬编码变量来测试它是如何工作的。 在我的回调页面上,我有:
<%= debug request.env['omniauth.auth'] %>
<%= debug request.env['omniauth.params'] %>
这两个是nul,除了......之外不显示任何内容......对于这两个字段...... 谢谢,
答案 0 :(得分:1)
我能够通过添加omniauth_callback_controller来解决它:
session[:omniauth] = request.env["omniauth.params"]
通过在我的观看中检索&lt;%=会话[:omniauth]%&gt;