Ответ 1
Это результат вызова: cache = > true в теге ссылки таблицы стилей.
: cache = > true принимает все предоставленные таблицы стилей и объединяет их в один файл с именем all.css.
Причина, по которой вы видите это только при развертывании Heroku, заключается в том, что он вызывает конкатенированный all.css только тогда, когда приложение Rails работает в рабочем режиме.
Итак, скажем, у меня есть три таблицы стилей, и я включаю их в свой заголовок:
= stylesheet_link_tag "application", "jquery-ui", "style", :cache => true
В процессе разработки это будет включать application.css, jquery-ui.css и style.css(в этом порядке).
В процессе создания он объединяет все CSS из трех файлов (в указанном порядке) в один файл под названием "all.css", который будет единственным файлом CSS.
Преимущество заключается в том, что в производстве меньше запросов HTTP и, в идеале, меньший размер файла для вашего включенного CSS, что, надеюсь, ускорит загрузку страницы.
Изменить Как указывает Каспер в комментариях, Heroku имеет файловую систему только для чтения. Вы можете посмотреть Heroku Asset Packager для решения, специфичного для Heroku.