Я использую Rails 3.1, и в моих ресурсах / таблицах стилей у меня есть куча файлов .css и .scss.
Похоже, Rails пытается предварительно скомпилировать файлы .css, и они всплывают со следующим сообщением:
Invalid CSS after "...{padding-bottom": expected "{", was ";0;}#order_deta..."
Если у меня есть только файлы .css и если я закомментирую гем sass-rails из Gemfile, то все работает.
group :assets do
#gem 'sass-rails', '~> 3.1.4'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
end
Итак, теперь вопрос в том, нужно ли мне конвертировать все мои файлы .css в .scss, чтобы хорошо играть с предварительной компиляцией ресурсов, или есть обходной путь?
Обновление:
Вот мой код:
config.assets.paths << "#{Rails.root}/app/themes/vanilla/assets/stylesheets"
config.assets.paths << "#{Rails.root}/app/themes/vanilla/assets/javascripts"
config.assets.paths << "#{Rails.root}/app/themes/vanilla/assets/images"
config.assets.precompile += ['vanilla.css', 'vanilla.js']
vanilla.css выглядит так:
/*
* 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 'reset'
*= require 'vroom'
*= require_self
*/
Здесь сброс - это reset.css, а vroom - vroom.css.scss
Это ошибка, которую я получаю:
Invalid CSS after "...{padding-bottom": expected "{", was ";0;}#order_deta..."
(in .........../stylesheets/vanilla.css)
Эта ошибка возникает из-за того, что Rails пытается предварительно скомпилировать reset.css.
Если я удалю самоцвет sass-rails и все файлы .scss, то получу ресурсы rake: прекомпиляция работает.