После того, как сегодня днем я развернул свое обновленное приложение Rails 2.3.x -> 3.1 (rc4) в нашей тестовой среде, все наши таблицы стилей и файлы JavaScript возвращали 404 ошибки. Мы добавили задачу rake assets:precompile в наш сценарий после развертывания, и потребовалось некоторое время, чтобы определить, почему в папке с ресурсами нет предварительно скомпилированных файлов, которые мы ожидали.
В конце концов, файлы не компилировались, потому что, по-видимому, по умолчанию обрабатываются только application.css и application.js (+ не JS/CSS-файлы).
Нам нужно было изменить следующее значение конфигурации следующим образом:
config.assets.precompile += %w( *.js *.css )
Вопрос: почему это не по умолчанию?
Я ожидал, что все, что не нужно обрабатывать как файл манифеста, будет просто скопировано в public/assets. Многое из того, что я читал о конвейере ресурсов, по сути состоит в том, чтобы «вставить свои ресурсы в приложение/активы, настроить файлы манифеста, и все должно работать». Поскольку задача assets:precompile не выдавала никакой информации о том, что она делала, потребовалось некоторое время, чтобы определить, что она просто просматривала не те файлы, которые, как мы думали, должна была.
Есть ли причина, по которой это не было бы хорошим значением для конфигурации прекомпиляции?
Спасибо!