С Ruby on Rails 3.1.2 я сделал следующее.
#app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require_tree .
Для файлов CSS я предпочитаю делать @import
, чтобы иметь больший контроль над порядком загрузки файлов CSS. Для этого мне нужно добавить расширение .scss
к файлу app/assets/stylesheets/application.css
, а также ко всем CSS-файлам, которые я хочу импортировать, например, к CSS-файлу jQuery UI.
#app/assets/stylesheets/application.css.scss
/*
* This is a manifest file that'll automatically include all the stylesheets available in this directory
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
* the top of the compiled file, but it's generally better to create a new file per style scope.
*= require_self
*/
@import "jquery-ui/ui-lightness/jquery-ui-1.8.16.custom.css.scss";
/* Other css files you want to import */
@import "layout.css.scss";
@import "home.css.scss";
@import "products.css.scss";
....
Затем я поместил все jQuery UI, относящиеся к вендору / активам, следующим образом:
Таблица стилей пользовательского интерфейса jQuery:
vendor/assets/stylesheets/jquery-ui/ui-lightness/jquery-ui-1.8.16.custom.css.scss
Папка изображений jQuery UI:
vendor/assets/images/images
Обратите внимание, что вы можете создать дополнительную папку в пути к таблицам стилей, как я делал здесь с путем "jquery-ui / ui-lightness". Таким образом, вы можете хранить несколько разделов jQuery в отдельных папках.
** Перезагрузите сервер, чтобы загрузить все вновь созданные пути загрузки **
У Райана Бейтса есть несколько отличных скринкастов о конвейере ресурсов и Sass в Ruby on Rails 3.1, где он показывает, как использовать функцию @import в Sass. Смотрите здесь:
Редактировать: Я забыл упомянуть, что это работает как локально, так и на Heroku в стеке Cedar .