Ресурсы Rails:странное поведение перед компиляцией

Я столкнулся со странным поведением задачи assets:precompileили в по крайней мере перед чем-то, что я не совсем понимаю.

Итак, я использую Rails 3.1.3, Sprockets 2.0.3, Less 2.0.11 для своего веб-приложения, плюс я полагаюсь на Bootstrap для макета, поэтому я также использую less-rails 2.1.8 и меньше. рельсы-бутстрап 2.0.8. Я настроил стиль, как говорится здесь.

Конфигурация моих ассетов следующая:

stylesheets
|--application.css.scss
|--custom-style/
   |--variables.less
   |--mixins.less
   |--buttons.less
|--custom-style.css.less

В application.css.scss я делаю

//=require custom-style

И в пользовательском стиле делаю

@import "twitter/bootstrap/reset";
//@import "twitter/bootstrap/variables"; // Modify this for custom colors, font-sizes, etc
@import "custom-style/variables";
//@import "twitter/bootstrap/mixins";
@import "custom-style/mixins";
// And all the other standar twitter/bootstrap imports...

// Other custom-style files to import
@import "custom-style/buttons"
//...

// And other rules here
//...

Наконец, в buttons.lessЯ использую некоторые переменные и миксины, определенные в файлах variable.lessи mixins.lessBootstrap, @whiteи .buttonBackground, чтобы быть более конкретными.

Если я запускаю bundle exec rake assets:precompileс приведенной выше конфигурацией, задача завершается с ошибкой, и я получаю эту ошибку:

$ bundle exec rake assets:precompile
/usr/local/rvm/rubies/ruby-1.9.3-p0/bin/ruby /usr/local/rvm/gems/ruby-1.9.3-p0/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets
rake aborted!
.buttonBackground is undefined

Но если я это делаю, меняется

buttons.less --> buttons.css.less

@import "buttons"  --> @import "buttons.css.less"

Все работает нормально! !

Это как-то связано с областью действия less переменных и функций при работе с вложенным импортом? Или что-то, что связано с порядком, в котором парсер меньшего размера или Sprockets обрабатывает дерево импорта?

Я что-то упустил или делаю что-то не так?

Спасибо :)

Примечание: Я получаю ошибку даже с исходными файлами переменных и примесей, так что это не связано с переопределениями, сделанными в них.

9
задан carols10cents 8 June 2012 в 18:40
поделиться