Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

uglifier not working in rails

config/application.rb
...
# Enable the asset pipeline
config.assets.enabled = true
# Version of your assets, change this if you want to expire all your assets
config.assets.version = '1.0'
config.assets.digest = true
config.assets.paths << "#{Rails.root}/vendor/assets/images" 
...


config/environment.rb
...
ENV['RAILS_ENV'] ||= 'production'
...

My gemfile
...
gem 'uglifier'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails', "  ~> 3.1.0"
  gem 'coffee-rails', "~> 3.1.0"
  #gem 'uglifier'
end
...

environment/production.rb
....
    config.active_support.deprecation = :notify
    config.assets.enabled = true
    config.assets.js_compressor  = :uglifier
    config.assets.css_compressor = :scss
    config.assets.compress = false
...

I have my javascript files in app/assets/javascripts. My javascript files are not getting compressed. Followed this url http://dev.mensfeld.pl/category/rails3/ to workout compression.

Thanks for any directions.

like image 952
Rajkamal Subramanian Avatar asked Sep 10 '11 11:09

Rajkamal Subramanian


3 Answers

In environment/production.rb:

...
config.assets.compress = true
...
like image 181
Ryan Graham Avatar answered Oct 29 '22 18:10

Ryan Graham


I had the same problem, & after much tearing of hair, discovered that you must change an asset file in order to trigger compression.

Seems that compression relies on asset file mtime, which makes sense, since one of the problems the asset pipeline intends to overcome is (from the Rails guide):

... when static assets are deployed with each new release of code, the mtime of all these files changes, forcing all remote clients to fetch them again, even when the content of those assets has not changed.

like image 38
Seth Bro Avatar answered Oct 29 '22 20:10

Seth Bro


use this command:

rake RAILS_ENV=production RAILS_GROUP=assets assets:precompile
like image 2
Daniel Loureiro Avatar answered Oct 29 '22 20:10

Daniel Loureiro