How to override single files from gem assets for assets:precompile? How to override single files from gem assets for assets:precompile? ruby-on-rails ruby-on-rails

How to override single files from gem assets for assets:precompile?


In the demo code you posted at on GitHub, your application.js has:

//= require any_gem

That does not bring in a directory, it brings in any_gem.js, which is the Gem's manifest file that brings in all of the Gem's JS files. If you do not want all of the files, then you need to change that to bring in only the files you want by listing them explicitly:

//= require ../../../vendor/assets/javascripts/any_gem/do_not_override.js

Then you can add back in all of your own JS files, including your overrides, with:

//= require_tree .

BTW, great job on creating the demo app! You're a role model for the kids.


In application.rb or production.rb, you can prepend or append more assets path.

config.assets.prepend_path 'vendor/assets/jquery'config.assets.append_path 'vendor/assets/something'

References: