加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 使用Omniauth-Facebook Gem添加个人资料图片的

发布时间:2020-12-16 20:58:56 所属栏目:百科 来源:网络整理
导读:我正在使用带有Rails的Omniauth Facebook Gem,需要为我的应用程序选择每个用户的个人资料. 是否像使用Gem从facebook检索用户名一样简单,还是需要将其上传到Amazon S3服务器等? 我的用户模型: def self.from_omniauth(auth) where(auth.slice(:provider,:ui
我正在使用带有Rails的Omniauth Facebook Gem,需要为我的应用程序选择每个用户的个人资料.

是否像使用Gem从facebook检索用户名一样简单,还是需要将其上传到Amazon S3服务器等?

我的用户模型:

def self.from_omniauth(auth)
    where(auth.slice(:provider,:uid)).first_or_initialize.tap do |user|
      user.provider = auth.provider
      user.uid = auth.uid
      user.name = auth.info.name
      user.oauth_token = auth.credentials.token
      user.oauth_expires_at = Time.at(auth.credentials.expires_at)
      user.save!
    end

找不到明确的答案.

更新:
在我的展示页面中,它只显示网址:

<b>IMAGE:</b> <%= @user.image %>

谢谢

解决方法

这很简单.而且您不需要在服务器上存储图像.你可以简单地从Facebook上获取它.

我是这样做的:
在用户模型中添加图像字段:

rails generate migration addImageToUsers image:string

添加attr_accessible列表.

然后在上面的方法中,为图片添加以下列表:

user.image = auth.info.image

这是facebook存储用户图像的直接网址.

您可以检查您的auth哈希来研究不同大小的用户图像.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读