Rails 3에서는 자산 파이프 라인에서 자산을 생성하기 위해 독점적으로 사용 된 gem assets
이 Gemfile 그룹에 올바르게 배치되었습니다 .
...
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails'
gem 'coffee-rails'
gem 'uglifier'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
end
이제 (아직 진행중인) 업그레이드 문서 에 따르면 :
Rails 4.0은 Gemfile에서 자산 그룹을 제거했습니다. 업그레이드 할 때 Gemfile에서 해당 줄을 제거해야합니다.
물론 RC1로 새 프로젝트를 만들면 모든 그룹 외부에 기본적으로 포함 된 자산 관련 gem이있는 Gemfile이 생성됩니다.
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.0.rc1'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0.rc1'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby
...
이것은 이러한 gem이 이제 기본적으로 프로덕션 빌드에 번들됨을 의미합니까? 그렇다면 왜 마음이 바뀌 었습니까? Rails 4는 프로덕션에서 동적 자산 생성으로 이동하고 있습니까?
RAILS_GROUPS=assets
(참조 Rails.groups
)해야합니다.