English 中文(简体)
“行动意见:”
原标题:"ActionView::Template::Error ( isn t precompiled)" raised on "image_tag nil"

如果我不正确处理观点,生产环境就显示500个。

<%=图像_tag post.user.image_url %>

这可以

<%=图像_tag post.user.image_url if post.user && post.user.image_url %>

但是,我几乎无所顾忌,并数次放弃这一问题。

我如何防止这种情况? 在生产环境中,我如何使用<代码><%=图像_tag nil %>,而不提500?

最佳回答

。 铁路必须具有源头,不能与铁路做任何事,而是提出例外。

你们可以这样写一个助手:

module ApplicationHelper
  def safe_image_tag(source, options = {})
    source ||= "default.jpg"
    image_tag(source, options)
  end
end

或者直截了<代码>nil。 您必须做的任何工作,以防出现错误。

问题回答

暂无回答




相关问题
How to make Rails 3.1 use SASS (Over SCSS) as the default?

Having a hard time figuring out how to make SASS, not SCSS, as the default for stylesheets. I ve tried making a sass_config.rb file with this: Sass::Plugin.options[:syntax] = :sass Sass::Plugin....

更新网页而无需更新

因此,由于所有这一切都涉及到利用美国司法和司法局从铁路3.1号中删除,我很想知道,我将如何在一页上更新相对大量的html。 在我只作部分发言之前......

Ruby on Rails 3.1 without execjs?

If you install Ruby on Rails 3.1 the gem execjs gets installed by default. I excluded CoffeeScript, because I thought it needed execjs, but execjs wants to be installed anyway. Is execjs now a ...

Is Rails 3.1 Edge breaking XmlMarkup::Builder?

There are a number of examples on the Web (such as http://techoctave.com/c7/posts/32-create-an-rss-feed-in-rails) showing how to make a nice RSS feed using Builder. The canonical template is something ...

Engine s assets with Rails 3.1

How should one provide assets in an engine in Rails 3.1? Where should they be located and can they be included automatically? (originally asked by Tomas Celizna)

Subqueries in activerecord

With SQL I can easily do sub-queries like this User.where(:id => Account.where(..).select(:user_id)) This produces: SELECT * FROM users WHERE id IN (SELECT user_id FROM accounts WHERE ..) How ...