首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >+ OmniAuth-Facebook什么也不做

+ OmniAuth-Facebook什么也不做
EN

Stack Overflow用户
提问于 2012-06-28 08:25:59
回答 1查看 2.4K关注 0票数 1

我一直在使用https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview来让facebook认证工作。我做了它让我做的一切,但还是没有用。我最初得到了一个Cookie溢出错误,所以在做了一些googling之后,我在omniauth_callbacks_controller.rb中添加了(额外的),如下所示

代码语言:javascript
复制
   session["devise.facebook_data"] = request.env["omniauth.auth"].except('extra')

它消除了错误,但仍然没有登录用户。事实上,我甚至不认为它会创建用户(使用heroku c)。

它给了我一个附加"sign_up#=“的url。有什么问题吗?

代码语言:javascript
复制
  user = User.create(name:auth.extra.raw_info.name,
                       provider:auth.provider,
                       uid:auth.uid,
                       email:auth.info.email,
                       username:auth.info.email,
                       password:Devise.friendly_token[0,20]

                       )

我在用户模型中使用用户名时添加了"username“,但我似乎想不出任何需要编辑/添加的东西。

Rails 3.1.3,Ruby1.9.3p194 (2012-04-20修订版35410) x86_64-darwin11.4.1

===============quick更新===========================

所以看起来我有用户要保存-我可以在数据库中看到它。但是,它仍然不能登录用户,而且我不能与创建的用户登录,因为我只知道用户名和电子邮件,而不知道密码。简而言之,我让Facebook给我发了信息,我可以把它保存到数据库,但没有重定向到登录屏幕。

EN

回答 1

Stack Overflow用户

发布于 2012-06-29 05:19:49

好吧我想明白了。

首先,我必须将用户模型中的"provider“和"uid”添加为attr_accessible (当然是在生成迁移之后),如下所示:

代码语言:javascript
复制
attr_accessible :password, :password_confirmation, :remember_me, :username, :email,
:bio, :website_blog, :company, :name, :image, :provider, :uid

然后,在ApplicationController.rb中,我不得不调整after_sign_in_path_for(资源)方法。我正在使用Devise,但不久前我更改了它,以便在登录后将用户重定向到上一页,但我想现在Facebook也参与进来了,这导致了一个错误。因此,我不得不注释掉前面的内容,并且只使用root_url,我就可以登录用户并重定向到主页。

代码语言:javascript
复制
def after_sign_in_path_for(resource)       
 sign_in_url = root_url
 #sign_in_url = url_for(:action => 'new', :controller => 'sessions', :only_path => false, :protocol => 'http')  

  #if (request.referer == sign_in_url)
  #  super
  #else
  #  request.referer
  #end
end

现在,我只需要弄清楚如何将用户重定向到上一页,而不会导致错误,这将是完美的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11240756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档