I just migrated my Application to rails 4.1.0
from 4.1.rc2
. Started getting these errors for my JS files
ActionView::Template::Error: Asset filtered out and will not be served: add `config.assets.precompile += %w( my_js )` to `config/application.rb` and restart your server
Responding to urging from Heroku, the Rails maintainers have merged sanity checks from the sprockets_better_errors gem into Rails 4.1. See https://github.com/rails/sprockets-rails/pull/84
The intent is to reveal asset pipeline errors that you would see in production when you run the app in development mode.
You probably are using a javascript_include_tag
in an application layout instead of placing your JavaScript files in the app/assets/javascripts/ folder.
You could move your files to the app/assets/javascripts/ folder.
Alternatively, you'll need to update your config/application.rb file to include:
config.assets.precompile += %w( my_js )
Note that the filename should not include the .js file extension.
If you have added something like stylesheet_link_tag params[:controller]
to your application layout header, because you have separate JS applications on different controllers but with same basic layout, you will be quite annoyed with this. Quick way to get over this and continue work (but maybe not a final solution) with all assets precompiled is to add the following to the /config/initializers/assets.rb:
Rails.application.config.assets.precompile += [/.*\.js/,/.*\.css/]
Note that this is as it is even for .js.coffee
and .css.scss
, .js
and .css
are enough.
Ideally, the solution by @zmilojko works but I also have active admin in this app.. hence after looking a little further I found the following solution:
Rails.application.config.assets.precompile += %w(*.svg *.eot *.woff *.ttf *.gif *.png *.ico)
Rails.application.config.assets.precompile << /\A(?!active_admin).*\.(js|css)\z/
Just add the lines above to: /config/initializers/assets.rb
The code above precompiles assets while skipping active admin files. so that they are not processed twice or out of turn leading to errors.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With