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

Show source
Register or log in to add new notes.
December 31, 2011 - (v3.1.0)
0 thanks

Recommendations

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