2012-05-04 4 views
0
module UsersHelper 

    # Returns the Gravatar (http://gravatar.com/) for the given user. 
    def gravatar_for(user, options = { size: 10 }) 
    gravatar_id = Digest::MD5::hexdigest(user.email.downcase) 
    size = options[:size] 
    gravatar_url = "http://gravatar.com/avatar/#{gravatar_id}.png?s=#{size}" 
    image_tag(gravatar_url, alt: user.name, class: "gravatar") 
    end 
end 

私はこのコードを使用して、グラバターのサイズを変えると仮定しましたが、影響はありません。何か不足していますか?また、ビュー内の値を次のように変更しようとしました。size:属性はこのコードで何をしますか?

<%= gravatar_for @user, size: 10 %> 
<%= @user.name %> 

これが何か変わるかどうかはわかりません。

+1

生成されたHTMLはどのようなものですか?グラバターの 's ='オプションは機能します。 – ThiefMaster

+0

@ThiefMaster 'Rails Tutorial 'これは生成されたhtmlです – Tom

+0

私の失敗私はあなたの助けを借りてgravatar_urlに'?s =#{size} '部分を追加していませんでした! – Tom

答えて

1

あなたのヘルパーモジュールを想定したが

module UsersHelper 

    # Returns the Gravatar (http://gravatar.com/) for the given user. 
    def gravatar_for(user, options = { size: 50 }) 

    gravatar_id = Digest::MD5::hexdigest(user.email.downcase) 

    size = options[:size] 

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

    image_tag(gravatar_url, alt: user.name, class: "gravatar") 

    end 

end 

以下のように表示してあなたのサイズに渡している

<%= gravatar_for @user, :size => 30 %> 
関連する問題