5

Gravatarでこのレールキャストを実行しましたが、アプリケーションヘルパーに以下のヘルパーメソッドがあります。

module ApplicationHelper
  def avatar_url(user)
    gravatar_id = Digest::MD5.hexdigest(user.email.downcase)
    "http://gravatar.com/avatar/#{gravatar_id}.png?s=200"
  end
end

そして私はこれを私の見解に持っています

<%= image_tag avatar_url(user) %>

s = 200を指定されたサイズに変更するサイズオプションを受け入れるようにヘルパーを変更するにはどうすればよいですか?

ありがとう

4

2 に答える 2

20
module ApplicationHelper
  def avatar_url(user, size)
    gravatar_id = Digest::MD5.hexdigest(user.email.downcase)
    "http://gravatar.com/avatar/#{gravatar_id}.png?s=#{size}"
  end
end

Then call:

<%= image_tag avatar_url(user, 200) %>

You can also check Michael Hartl's guide.

于 2013-01-16T19:09:50.597 に答える
1

フォルダの下のapplication_helper.rbファイルにapp/helpers、次のメソッドを追加します。

# app/helpers/application_helper.rb

def gravatar_for(user, options = { size: 200})
  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.username, class: "img-circle")
end

show.html.erb次に、 :でそれを呼び出します

<%= gravatar_for @user, size: 200%>
于 2016-03-13T21:13:31.503 に答える