Рельсы не минирующие

Я работаю над проектом, который не уменьшает CSS или JS на производстве.

К сожалению, у меня никогда не было этой проблемы, и я просто не очень хорошо разбираюсь в том, как конвейер активов работает подробно, чтобы отладить проблему.

Мой вопрос: каковы основные пункты/настройки, которые мне нужно проверить, чтобы убедиться, что это включено?

Он правильно сочетает разные файлы в одном файле JS и CSS... он просто не минимизирует.

До сих пор я добавил config.assets.js_compressor = :uglifier в production.rb и uglifier в Gemfile, но до сих пор нет кубиков.

Я использую Rails 3.2.12 обновленный от Rails 2

Ответы

Ответ 1

Этот ответ применяется для рельсов 4

Одна из причин, по которой рельсы-4 не будет минимизировать активы, - это когда RAILS_ENV не настроен на производство.

Обычно это происходит, когда вы предварительно компилируете активы и запускаете webrick в режиме prod, используя:
rails s -e 'production'
но все же результирующие application.css и application.js объединяются, но не минимизируются.

Чтобы решить эту проблему, используйте следующую команду для указания env во время прекомпиляции активов:

$ RAILS_ENV = производственный пакет exec rake assets: precompile

Также, если вы обновляетесь с рельсов 3 до рельсов 4, обратите внимание, что config.assets.compress = true в production.rb больше не эффективна для рельсов 4. Вам нужно будет добавить следующие директивы в свои config/environments/production.rb файл config/environments/production.rb для минимизации js и css файлов:

  # Compress JavaScripts and CSS.
  config.assets.js_compressor = :uglifier # make sure the 'uglifier' gem is included before adding this line
  config.assets.css_compressor = :sass # if you are using the sass-rails gem, this line is unnecessary

Ответ 2

Откуда вы знаете, что это не минирование? Вы запустили

rake assets:precompile

или вы используете capistrano для развертывания? Если вы используете capistrano для развертывания, обязательно добавьте эту строку поверх deploy.rb

load 'deploy/assets'

В противном случае, пожалуйста, отправьте шаги, которые вы предпринимаете, чтобы заставить его работать