Ruby on rails rails中的资产管道

Ruby on rails rails中的资产管道,ruby-on-rails,ruby,assets,Ruby On Rails,Ruby,Assets,我试图在网络中找到资产管道的重要性,但没有弄清楚。为什么在评论部分中,很少有宝石放在group:assets中,并且在生产中不需要提及?我有三个小问题需要澄清 我们所说的资产管道到底是什么意思? 为什么我们需要资产组? 为什么我们在生产中不需要这些宝石呢 # Gems used only for assets and not required # in production environments by default. group :assets do gem 'sass-rails'

我试图在网络中找到资产管道的重要性,但没有弄清楚。为什么在评论部分中,很少有宝石放在group:assets中,并且在生产中不需要提及?我有三个小问题需要澄清

我们所说的资产管道到底是什么意思? 为什么我们需要资产组? 为什么我们在生产中不需要这些宝石呢

# Gems used only for assets and not required
# in production environments by default.

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
end
基本阅读:

什么是资产管道? 资产管道提供了一个框架 连接、缩小或压缩JavaScript和CSS资产。信息技术 还增加了用其他语言编写这些资产的能力,例如 咖啡脚本、Sass和ERB

将这些特定的gem划分为它们自己的组的原因是,在生产中不需要它们,当运行
rake assets:precompile
时,它以web浏览器可以理解的形式创建所有资产(一旦部署,这些资产存储在公共目录中)


e、 咖啡脚本被编译成javascript,sass被编译成CSS。Uglifier只是缩小了javascript。

因此,当我们进入生产阶段时,在
rake assets:precompile
命令的帮助下,所有这些资产都存储在公用文件夹中,这样就不再需要这些gem了。我的理解正确吗?编译需要gems,但它们的代码不需要加载到生产应用程序中