Computes the path to an image asset in the public images directory. Full paths from the document root will be passed through. Used internally by image_tag to build the image path.
image_path("edit") # => /images/edit image_path("edit.png") # => /images/edit.png image_path("icons/edit.png") # => /images/icons/edit.png image_path("/icons/edit.png") # => /icons/edit.png image_path("http://www.railsapplication.com/img/edit.png") # => http://www.railsapplication.com/img/edit.png
# File actionpack/lib/action_view/helpers/asset_tag_helper.rb, line 413 def image_path(source) ImageTag.create(self, @controller, source).public_path end
I would just use the path_to_image. I find that this is what works best. As it says above it can create problems.
Here is my code
def background_path(background) if background path_to_image background.file_name.normal else path_to_image "background_preview.jpg" end end def flavor_path(flavor) if flavor path_to_image flavor.file_name.normal else path_to_image("flavor_preview.jpg") end end
basic but gets the job done and it does not have problem with my pre built paths which are called image_path