Прочитал
это,
это и
это, воодушевился, стал апгрейдить один недоделанный rails-проект, ничего не вышло, у теперь возник ряд как технических вопросов, так и общих, типа так ли asset pipline крут и полезен, как его малюют.
Главный технический вопрос — как asset pipeline заставить работать с compass-ом? Был у меня compass+blueprint в rails 3.0.9, генерил screen.css, print.css. Переношу scss в assets — естественно, компасовские импорты и инклуды не работают. По этому поводу есть issues и alfa-версии компаса, но даже если все включится, то зачем asset pipeline? @include от компаса круче, поскольку их можно (и нужно) добавлять в отдельные классы, а так ли это с встроенным *= require от asset pipeline?
C javascript ситуация совсем непонятная. Зачем ядро jquery и jquery-ui объединять самописными скриптами в один файл? Раньше считалось, что полезно напротив минимизировать трафик путем загрузки общих файлов типа jquery.js с code.google.com. А теперь все в одном файле. Маленький хак в любом контроллере тянет за собой повторную загрузку всех стандартных библиотек, включая jquery(-ui).
Есть одна проблемка, которую хочется решить. Специфичные для страниц javascript-ы я подключаю из вьюх через
<% content_for :js do %>
<%= javascript_include_tag "script1" %>
<%= javascript_include_tag "script2" %>
<% end %>
Но этот блок можно вызвать только один раз, повторные вызовы в разных partial-ах его переписывают. А хотелось бы, чтобы код складывался, да еще и без повторов. Как бы это сделать, может с помощью asset pipeline?
А вообще, какие еще плюсы asset pipeline Вы знаете? Минимизирует автоматом через uglifier, это круто. Еще ruby-переменные можно засовывать прямо в js, это не очень круто, потому что все-таки правильнее отделять код от данных. Что еще?