为什么= javascript_include_tag:默认值不能在Rails 3.1中的haml布局中工作

时间:2011-07-30 22:36:14

标签: ruby-on-rails ruby-on-rails-3.1

男人,WTH正在继续这个事情。您知道Rails 3.1中该行实际上做了什么吗?

<script src="/assets/defaults.js" type="text/javascript"></script>

正如他们在ESPN上所说,“来吧,伙计。”

我知道资产不再被视为二等公民。但似乎他们甚至无法在此候选版本中获得绿卡。在新的app / assets / javascripts / application.js中:

// This is a manifest file that'll be compiled into including all the files listed below.
// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
// be included in the compiled file accessible from http://example.com/assets/application.js
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
//= require jquery
//= require jquery_ujs
//= require_tree .

SOOOOO。我应该下载jquery吗?我该怎么办?因为除了application.js之外,javascripts目录中没有任何内容。

加重。然而它是免费的,所以我如何抱怨?无论如何,这些问题看起来很基本,但我很感激您提供的任何帮助。

1 个答案:

答案 0 :(得分:17)

在Rails 3.1中,不再有“默认值”,而是application.js文件中指定的是“默认值”。您可以使用以下行包含此文件:

 javascript_include_tag "application"

jqueryjquery_ujs文件附带jquery-rails gem,它位于默认的Rails 3.1 Gemfile中。

该文件中的//= require行告诉Sprockets你需要一个文件,在这种情况下jquery.js jquery-rails//= require_tree .将需要与application.js在同一目录中的所有其他JavaScript文件,并将它们全部连接到一个文件中。

您可以阅读有关the asset pipeline here的更多信息。