If I don't handle view correctly, Production environment show 500.
<%= image_tag post.user.image_url %>
This could be
<%= image_tag post.user.image_url if post.user && post.user.image_url %>
but I am little careless and forgot this issue several times.
How can I prevent this? How can I use <%= image_tag nil %>
in production environment without raising 500?
image_tag
must have a source, Rails can do nothing with it, but raise an exception.
You can write a helper like this:
module ApplicationHelper
def safe_image_tag(source, options = {})
source ||= "default.jpg"
image_tag(source, options)
end
end
or simply check for nil
directly in a view. Anyway you have to do something to prevent an error.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With