首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Facebooker2。rails和创建新用户

Facebooker2。rails和创建新用户
EN

Stack Overflow用户
提问于 2011-04-13 02:33:44
回答 1查看 687关注 0票数 0

我想使用脸书连接功能的facebooker2。因此,当用户使用facebook凭据登录时,我希望重定向到操作create_facebook_user

所以我使用了facebooker2的助手:

代码语言:javascript
复制
 <%= fb_login_and_redirect("/users/create_facebook_user", :perms => 'first_name,last_name,email,user_birthday') %>

好的?如何访问facebook的公共信息,如电子邮件、first_name、last_name等。

我的控制器是:

代码语言:javascript
复制
def create_facebook_user
  if current_facebook_user
    @user = User.find_by_fb_user_id(current_facebook_user.id.to_i)
  end
  if @user.blank?
    @facebook_user = current_facebook_user.fetch

    @user = User.create :login => @facebook_user.email, :email => @facebook_user.email, :name => @facebook_user.name, :fb_user_id => @facebook_user.id
    if @user.save
      @user.profile = Profile.create(:benefactor_id => nil, :benefactor_invites =>   Setting.find_by_identifier("benefactor_invites").value.to_i)
      redirect_to :controller => "profiles", :action => "show", :id => @user.profile.id
    else
      render "new"
    end
  elsif @user.fb_user_id.nil?
    @user.update_attribute :fb_user_id, current_facebook_user.id
    redirect_to :controller => "dashboard", :url => "index"
  else
    redirect_to :controller => "dashboard", :url => "index"
  end
end

好吧,我的问题是获取用户的facebook信息。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-13 15:49:56

首先,请注意您正在使用的一些扩展权限并不存在:"first_name“和"last_name”。检查Facebook page about extended permissions

使用Facebooker登录后,您可以像这样访问这些字段:

代码语言:javascript
复制
current_facebook_user.first_name
current_facebook_user.last_name
current_facebook_user.email
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5639946

复制
相关文章

相似问题

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