8
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
...

app/assets/javascripts に JavaScript ファイルがあります。JavaScript ファイルが圧縮されません。この URL http://dev.mensfeld.pl/category/rails3/に従って、圧縮を試してください。

指示をありがとう。

4

3 に答える 3

11

environment/production.rb:

...
config.assets.compress = true
...
于 2011-09-16T19:54:48.120 に答える
8

私も同じ問題を抱えており、髪を引き裂いた後、圧縮をトリガーするにはアセットファイルを変更する必要があることに気付きました。

アセット パイプラインが克服しようとしている問題の 1 つが ( Rails ガイドから)であるため、圧縮はアセット ファイル mtime に依存しているようです。

...コードの新しいリリースごとに静的アセットがデプロイされると、これらすべてのファイルの mtime が変更され、それらのアセットのコンテンツが変更されていない場合でも、すべてのリモート クライアントがそれらを再度取得する必要があります。

于 2011-11-02T23:39:24.373 に答える
2

次のコマンドを使用します。

rake RAILS_ENV=production RAILS_GROUP=assets assets:precompile
于 2013-08-26T07:11:07.920 に答える