未定义的方法图像标记

时间:2012-09-17 04:35:01

标签: ruby-on-rails ruby-on-rails-3.1

我正在尝试在模型中调用图像标记并返回图像,如果它存在其他明智的返回null如下: -

 def medium_avatar_exists?
    if self.avatar.present?
      image_tag self.avatar.thumb_medium_url
    else
      image_tag "missing-avatar-medium.png"
    end
  end

当我从视图中调用此方法时: - current_user.medium_avatar_exist?

我收到一个错误,说未定义的方法image_tag可能是什么问题?

1 个答案:

答案 0 :(得分:3)

你不能在模型中使用辅助方法image_tag是一个辅助方法,你试图在模型中使用它,因此它会产生错误。

请在application_helper.rb或其他您想要的帮助

中尝试关注
def medium_avatar_exists?(user)
  if user.avatar.present?
    image_tag user.avatar.thumb_medium_url
  else
    image_tag "missing-avatar-medium.png"
  end
end

或者只是

def medium_avatar_exists?(user)
  image_tag (user.avatar.present? ? user.avatar.thumb_medium_url : "missing-avatar-medium.png")
end