0

User模型已AvatarUploader安装通过Devise. 反应很好:

"avatar": {
      "url": "http://185.48.228.95/uploads/user/avatar/avatar.png"
    }

但是当用户通过 Facebook(Koalagem)注册时,他的个人资料图片会被 Carrierwave 处理(我不想要这个)。

我为 Facebook 注册设置头像的用户控制器部分:

image = @graph.get_object("me?fields=picture.type(large)")
avatar = image['picture']['data']['url'].to_s
@user["avatar"] = avatar

哪个工作正常。解释一下为什么它会被 Carrierwave AvatarUploader 处理并给出当前响应。哪个不是有效的 URL。

"avatar": {
  "url": "http://185.48.228.95/uploads/user/avatar/https%3A/scontent.xx.fbcdn.net/v/t1.0-1/p200x200/11133815_976100819074773_1891085821809120990_n.jpg%3Foh%3D3bd392a5fdb9c5f1e3e6b01b8d47a1c0%26oe%3D590010A0"
}

如何使其工作以设置正确的 FB 头像链接?

4

1 回答 1

1

原来 Carrierwave 有它的帮手来实现这些目的

@user.remote_avatar_url = image['picture']['data']['url']

于 2017-02-17T12:31:48.160 回答