Как использовать javascript_include_tag, чтобы получить все скрипты в папке - PullRequest
9 голосов
/ 15 сентября 2010

Я хотел бы использовать javascript_include_tag, чтобы получить все сценарии, связанные с просмотром, используя рекурсию, которая помещена в public/javascripts/views.

Я пытаюсь javascript_include_tag "/views", :recursive => true, но не смог добавить ни одного сценария.

С уважением, Алексей Захаров

Ответы [ 4 ]

6 голосов
/ 15 сентября 2010

Согласно документации API из javascript_include_tag:

Возвращает HTML-тег сценария для каждого из предоставленных источников.

Вы можете передать имя файла (расширение .js необязательно) файлов javascript, которые существуют в вашем каталоге public / javascripts для включения в текущую страницу, или вы можете указать полный путь относительно корня вашего документа.

Вы не можете рекурсивно включить все файлы в свой каталог.Однако вы всегда можете написать что-то вроде следующей строки:

javascript_include_tag *Dir[Rails.root.join("public/javascripts/views/**/*.js")]
4 голосов
/ 26 февраля 2012

Простое решение - создать новый js-файл (далее называемый activ.js) и включить туда файлы.

# < FolderWithFiles >/activate.js :

//= require_tree . 
0 голосов
/ 18 января 2012

Следующий (неоптимизированный) код должен работать в рельсах 3.0 или выше

<%= javascript_include_tag Dir[Rails.root.join("public/javascripts/views/**/*.js")].map { |s| s.sub(Rails.root.join("public/javascripts/").to_s, "") } %>
0 голосов
/ 15 сентября 2010

Вы можете использовать

<%= javascript_include_tag :all %>

Но это будет работать, только если скрипты хранятся в вашем

RAILS_ROOT/public/javascripts

каталоге

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