method

image_path

image_path(source)
public

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.example.com/img/edit.png")          # => "http://www.example.com/img/edit.png"

If you have images as application resources this method may conflict with their named routes. The alias path_to_image is provided to avoid that. Rails uses the alias internally, and plugin authors are encouraged to do so.

1Note

Recommendations

newdark ยท Dec 31, 2011

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

==== Code example

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