uglifier不能在rails中工作

Raj*_*ian 7 ruby-on-rails-3 asset-pipeline

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
...
Run Code Online (Sandbox Code Playgroud)

我在app/assets/javascripts中有我的javascript文件.我的javascript文件没有被压缩.跟随此网址http://dev.mensfeld.pl/category/rails3/进行锻炼压缩.

谢谢你的任何指示.

Rya*_*ham 10

在environment/production.rb中:

...
config.assets.compress = true
...
Run Code Online (Sandbox Code Playgroud)


Set*_*Bro 8

我遇到了同样的问题,经过多次撕裂,发现你必须更改资产文件才能触发压缩.

似乎压缩依赖于资产文件mtime,这是有道理的,因为资产管道打算克服的问题之一是(来自Rails指南):

...当每个新版本的代码部署静态资产时,所有这些文件的mtime都会发生变化,迫使所有远程客户端再次获取它们,即使这些资产的内容没有更改.