2

我使用的是omniauth-facebook gem,它完美的工作,除了個人資料圖片不會顯示;當我放入代碼image_tag current_user.image.to_simage_tag current_user.image時,它不會顯示圖片,而是顯示文字(說圖片?類型=正常,方形,大)而不是圖片本身。omniauth facebook不顯示圖像

omniauth.rb

Rails.application.config.middleware.use OmniAuth::Builder do 
provider :developer unless Rails.env.production? 
provider :facebook, '166053726877178', 'df9249e9b70ef047e7a9456c7ebf9632', 
:image_size => 'square' 
end 

和user.rb

class User < ActiveRecord::Base 
    attr_accessible :email, :image, :name, :nickname, :provider, :uid 
    has_many :pictures 

def self.create_with_omniauth(auth) 
    create! do |user| 
    user.provider = auth["provider"] 
    user.uid = auth["uid"] 
    user.name = auth["info"]["name"] 
    user.email = auth["info"]["email"] 
    user.nickname = user.email.split("@").first 
    user.image = auth["info"]["image"] 
    end 
end 

acts_as_voter 
end 

的是,這種類型的代碼,它工作在以前的應用程序,但它不會在這裏工作。 由於事先

回答

7

獲得的用戶的圖像使用這些代碼,而不是 爲每一種的Facebook簡檔圖像的

def largeimage 
"http://graph.facebook.com/#{self.uid}/picture?type=large" 
end 
def normalimage 
"http://graph.facebook.com/#{self.uid}/picture?type=normal" 
end 

DEF smallimage 「http://graph.facebook.com/# {self.uid} /照片?類型=小」 結束

在你的意見

<%= image_tag(current_user.largeimage)%> 

+1

這應該被標記爲答案! –