Почему = javascript_include_tag: значения по умолчанию не работают в макете haml в Rails 3.1 - PullRequest
9 голосов
/ 31 июля 2011

Человек, 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 .

Оооочень.Я должен загрузить JQuery?Что я делаю?Потому что в этом каталоге javascripts нет ничего, кроме application.js.

Обострение.И все же это бесплатно, так как я жалуюсь?В любом случае, эти проблемы кажутся довольно простыми, но я был бы признателен за любую помощь, которую вы можете предложить.

1 Ответ

17 голосов
/ 31 июля 2011

В Rails 3.1 больше нет «значений по умолчанию» как таковых, а то, что указано в вашем файле application.js, это «значения по умолчанию».Вы должны включить этот файл, используя следующую строку:

 javascript_include_tag "application"

Файлы jquery и jquery_ujs поставляются с гемом jquery-rails, который находится в Rails по умолчанию 3.1 Gemfile.

Строка //= require в этом файле сообщает Sprockets, что вам требуется файл, который в этом случае будет jquery.js из jquery-rails, где //= require_tree . потребует все другие файлы JavaScript в том же каталоге, что и application.js и объединить их все в один файл.

Подробнее о конвейере активов можно прочитать здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...