Access Asset Path from Rails Controller

Marcel M. picture Marcel M. · Oct 19, 2011 · Viewed 37.3k times · Source

I'm sharing a configuration yml file client side, that I need to also load on the server side, I've placed it inside app/assets/javascripts/configuration.yml

I can use #{asset_path 'configuration.yml'} inside a view to get the path, but I can't inside a controller. I could access directly using "#{Rails.root}/app/assets/javascripts/configuration.yml" but when deploying the filename gets the digest string appended.

How can I get the same path from a controller?

Answer

Artem Kalinchuk picture Artem Kalinchuk · Oct 19, 2011
ActionController::Base.helpers.asset_path("configuration.yml")

Might also be good to put configuration.yml in a different folder to separate javascript from non-javascript files.