无法在视图中访问辅助方法

时间:2012-06-07 00:23:03

标签: ruby-on-rails helpers

我在视图中有以下代码:

<%= gravatar_for @user %>

以及我的助手中的以下代码:

module UsersHelper
    def gravatar_for(user)
        gravatar_id = Digest::MD5::hexdigest(user.email.downcase)
        gravatar_url = "http://gravatar.com/avatar#{gravatar_id}.png"
        image_tag(gravatar_url, alt: user.first_name.to_s + user.last_name.to_s, class: gravatar)
    end

end

但是我收到错误:#{1}} gravatar'代表#&lt;#:0x00000100a1cbf0&gt;`

导致这种情况的原因是什么?

1 个答案:

答案 0 :(得分:3)

您在gravatar的调用中使用了引用image_tag

如果您要应用样式,请使用字符串"gravatar"。否则,您需要确保方法或值gravatar存在/已初始化且可用。