我正在使用omniauth-facebook
宝石与devise
在我的网站上设置Facebook登录。我正在将Facebook用户数据导入到我的数据库中,但我遇到了一些奇怪的问题。如何将Facebook用户数据转换为我的数据库中的记录?
这里是我的方法用于导入数据:
#User.rb
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.email = auth.info.email.to_s
user.password = Devise.friendly_token[0,20]
user.username = auth.info.name
end
end
我回来的记录都有一个user.username
等于Facebook的电子邮件,以及user.email
是零。 auth.info.name
(实际上是电子邮件地址)是我实际能够恢复的唯一一块Facebook用户数据。其他一切都回来零。
有没有其他人遇到过这个?
你没有标记你正在使用哪种语言... –
@ASTEFANI良好的捕获,它的铁轨。 –
@JoeMorano是我的帖子下面回答你的问题? – smefju