2013-01-19 72 views
4

我正在通過Michael Hartl Rails教程開展工作,我收到了'添加Gravatar'部分的奇怪問題。我已經檢查了另一個Rails中Gravatar實現的代碼,我做了一個不同的教程,並沒有看到有什麼不同。儘管URI正確無法顯示Gravatar圖像 - Ruby on Rails

基本上:圖像沒有出現,但如果你右鍵點擊空間並訪問它指向正確的Gravatar頁面的URL。

代碼:(show.html.erb)

<%= gravatar_for @user %> 

代碼:(users_helper.rb)

def gravatar_for(user, options = { size: 50 }) 
    size = options[:size] 
    gravatar_id = Digest::MD5::hexdigest(user.email.downcase) 
    gravatar_url = "https://secure.gravatar.com/avatars/#{gravatar_id}.png?s=#{size}" 
    image_tag(gravatar_url, alt: user.name, class: "gravatar") 
end 

完全難住了,知道這是可能的東西真的很明顯我失蹤,但從書和Gravatar網站我似乎已經走過了這個權利...

+2

你確定這個網址是正確的嗎?我所見過的網址在網址中有虛擬形象(單數),而不是虛擬形象。 –

+0

什麼是在這裏呈現的HTML代碼? – phoet

+0

@FrederickCheung不敢相信。檢查鏈接並且它正確工作 - 但僅僅是因爲Gravatar自動處理了不正確的URL。它應該像你說的那樣是AVATAR單數,感覺就像這樣一個笨蛋! –

回答

0

是整個users_helper.rb文件?

礦是這樣的:

module UsersHelper 

    # Returns the Gravatar (http://gravatar.com/) for the given user. 
    def gravatar_for(user) 
    gravatar_id = Digest::MD5::hexdigest(user.email.downcase) 
    gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}" 
    image_tag(gravatar_url, alt: user.name, class: "gravatar") 
    end 
end 

隨着

模塊UsersHelper

和一個額外的

+0

我省略了模塊的開始和結束,因爲我認爲它們是隱含的:) –

7

URL是錯誤的

gravatar_url = "https://secure.gravatar.com/avatars/#{gravatar_id}.png?s=#{size}" 

正確版本

gravatar_url = "https://secure.gravatar.com/avatar/#{gravatar_id}.png?s=#{size}" 

單數形式 「... /頭像/ ......」

0

我也要同樣的問題。我通過將gravatar_url更改爲「http://gravatar.com/avatar/# {gravatar_id}」而不是https連接來解決此問題。

4

我有同樣的問題,我通過在Adblock和ghostery中加入Cloud9頁面來解決問題

+0

我有一個類似的問題,必須將我的「斷開」插件的網站列入白名單,然後按預期方式加載圖像。 – Spidey