2013-01-16 5 views
3

Gravatars에서이 railscast을 거쳤습니다. 이제 애플리케이션 도우미에 다음 도우미 메서드가 있습니다. 그것은의를 변경하는 크기 옵션을 받아 들일 수 있도록Rails Gravatar Helper Method

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) %> 

이가 어떻게 내가 도우미를 수정할 수 = 크기 (200)는 지정된?

감사

답변

17
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 

그런 전화 :

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

또한 Michael Hartl's 가이드를 확인할 수 있습니다. show.html.erb에서 다음

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 

호출 : 다음 app/helpers 폴더 아래 application_helper.rb 파일에서

+0

그게 좋은, 감사합니다 내가 설정할 수있는 방법이 과태? – Ollie2619

+2

예 : def avatar_url (user, size = 200)은 작동해야합니다 –

+0

도와 주셔서 감사합니다. tom tom much apprec – Ollie2619

1

, 다음과 같은 방법을 추가

<%= gravatar_for @user, size: 200%> 
+0

"답변 게시"를 클릭하기 전에 대답이 어떻게 렌더링되는지보십시오. 서식을 수정하려면 텍스트와 그 뒤에 오는 코드 블록 사이에 줄 바꿈을 삽입해야했습니다. 모바일 앱을 통해 전송 한 경우 미리보기도 있습니다. –