2014-12-28 28 views
2

我使用devise_omniauth臉譜從facebook檢索用戶圖片,一切正常,我只想得到一個更大的圖片,我已經閱讀了許多類似的問題,但他們都提供我覺得不方便的網址。 這是我的user.rb:devise + omniauth_facebook如何獲得一個大的臉書圖片

def self.from_omniauth(auth) 
     where(provider: auth.provider, uid: auth.uid).first_or_create do |user| 
      user.email = auth.info.email 
      user.password = Devise.friendly_token[0,20] 
      user.name = auth.info.name 
     user.image_string = auth.info.image 
     end 
    end 

有什麼建議嗎?

回答

7

您可以設置圖像的默認大小config/initializers/omniauth.rb如,

Rails.application.config.middleware.use OmniAuth::Builder do 
    provider :facebook, ENV['FACEBOOK_KEY'], ENV['FACEBOOK_SECRET'], :image_size => 'large' 
end 

只提,臉譜提供了4種尺寸的圖像small, square, large, normal

的。如果您使用的是設計,請檢查您config/initializers/devise.rb

Devise.setup do |config| 
... 
    config.omniauth :facebook, ENV['FACEBOOK_KEY'], ENV['FACEBOOK_SECRET'], :image_size => 'large' 
... 
end 
+1

我很確定我很久以前就接受了這個答案!我不知道爲什麼它沒有被接受。 –