Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails最佳omniauth gem_Ruby On Rails_Omniauth - Fatal编程技术网

Ruby on rails rails最佳omniauth gem

Ruby on rails rails最佳omniauth gem,ruby-on-rails,omniauth,Ruby On Rails,Omniauth,我正在使用RubyonRails的Github的Omniauth facebook gem。关于omniauth facebook gem,我有几个问题 我正在使用以下函数从Facebook获取数据,但每次用户登录和注册时都会调用此函数 def self.from_omniauth(auth) where(auth.slice(:provider, :uid)).first_or_initialize.tap do |user| user.provider = auth.provider

我正在使用RubyonRails的Github的Omniauth facebook gem。关于omniauth facebook gem,我有几个问题

我正在使用以下函数从Facebook获取数据,但每次用户登录和注册时都会调用此函数

def self.from_omniauth(auth)
where(auth.slice(:provider, :uid)).first_or_initialize.tap do |user|
    user.provider = auth.provider
    user.id = auth.uid
    user.uid = auth.uid
    user.name = auth.info.name
    user.username = auth.info.nickname
    user.email = auth.info.email
    user.gender = auth.extra.raw_info.gender
    user.is_admin = false
    user.picture = "http://graph.facebook.com/#{auth.uid}/picture?type=large&height=324&width=580"
    user.updated_at = auth.extra.raw_info.updated_time
    user.oauth_token = auth.credentials.token
    user.oauth_expires_at = Time.at(auth.credentials.expires_at)
    user.save!
end
end
如何区分注册和登录功能

另一方面,我想在用户登录或发布内容时发布用户的墙内容。如何在Omniauth facebook gem中实现这一点


谢谢。

Omniauth facebook
gem是最好的选择,如果你想在用户墙上添加任何帖子,你可以参考此链接