[英]Why do I get a “can't convert symbol into hash” when using helper inside helper in Rails 3?
這是我的代碼:
def tiny_user_image(user)
8 if user_signed_in?
9
10 gravatar_image_tag(user.email, :gravatar => :identicon, :size => 20)
11
12
13 elsif user_signed_in? && current_user.friends.include?(user)
14
15
16
17 else #user is not signed in
18
19 gravatar_image_tag(user.email, :gravatar => :identicon, :size => 20)
20 end
21 end
22
23 end
'gravatar_image_tag' 是這個助手: https://github.com/mdeering/gravatar_image_tag
我從部分調用 tiny_user_image:
1 = div_for review do
2 = link_to review.title, review_path(review)
3 = tiny_user_image(review.user)
我不知道為什么在傳遞 object 用戶的 tiny_user_image 時出現錯誤。 當我在 IRB 中使用調試器時,它看起來很好......
謝謝你!
您收到此錯誤是因為您在傳遞給 gravatar_image_tag() 的 hash 中將符號分配為:gravatar 鍵的值。
在 github 的示例中,您可以看到它在那里期待 hash
gravatar_image_tag('junk', :alt => 'Github Default Gravatar', :gravatar => { :default => 'http://github.com/images/gravatars/gravatar-80.png' })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.