Rails 3资产管道js错误?

时间:2012-06-30 12:18:41

标签: ruby-on-rails-3 asset-pipeline

我拥有app/assets/javascripts

下的所有javascript文件

一些javascript文件

  • 的application.js
  • effect.js
  • rails.js
  • 的prototype.js
  • scriptaculous.js

预编译资产rake assets:precompile时,会在公共/资产

中创建application.js

但是application.js文件只包含app/assets/javascript/application.js中的内容,不包括其他js文件内容(efect,prototype)。

如果我将javascript文件添加到config.assets.precompile,就像这样

config.assets.precompile += %w( rails.js menu.js )

这为public/assets

中的每个创建单独的js文件

在我的production.rb文件中

# Disable Rails's static asset server (Apache or nginx will already do this)

config.serve_static_assets = true

# Compress JavaScripts and CSS
config.assets.compress = true

我需要将所有javascript文件合并到singlefile中。

我正在使用原型。

我缺少什么?

1 个答案:

答案 0 :(得分:0)

application.js上,您必须包含要合并的文件,并在开始时添加:

//= require effect
//= require rails
//= require prototype
//= require scriptaculous

或者如果它们都在同一个文件夹中

//= require_tree .

然后在您的应用程序中,您必须仅包含application.js的标签,而不是每个标签。