Heroku не выполняет предварительную компиляцию моих активов, чтобы подготовить мое приложение к конвейеру активов - PullRequest
7 голосов
/ 18 октября 2011

У меня возникли некоторые проблемы с настройкой конвейера активов при работе с Heroku / Cedar с использованием Rails 3.1.1

Я отправил свое приложение, и оно успешно запустилось, но не было сообщения о том, что "Подготовка конвейера активов", и статические активы не обслуживаются. Никакие JS, CSS или изображения не могут быть найдены, так как не выполняется компиляция слага или компиляция ресурсов времени выполнения.

Любая помощь будет принята с благодарностью.

Они описывают, что должно происходить во время развертывания по этой ссылке , которую я обобщу ниже:

С приложением Rails 3.1 на Heroku Cedar, когда вы выполняете команду git push heroku, все ваши ресурсы будут предварительно скомпилированы как часть процесса развертывания с использованием набора rake exec rake assets: precompile.

Ответы [ 2 ]

18 голосов
/ 19 октября 2011

Хорошо, так что решение было таким:

Я использую mongoid, который убирает строку 'rails / all' как часть конфигурации. В результате звездочки не загружались.

Что вам нужно сделать с rails 3.1+, также добавьте require "sprockets/railtie" в application.rb, чтобы включить звездочки. Бум, работает.

Эту информацию можно найти на сайте mongoid здесь . Это полезно знать всем, кто может не загружать полные rails / all в application.rb, очевидно, что звездочки необходимы для работы конвейера ресурсов.

2 голосов
/ 19 октября 2011

Вы уже видели эту статью о конвейере ресурсов Rails 3.1 на Heroku - http://devcenter.heroku.com/articles/rails31_heroku_cedar. Я вчера просмотрел ее и получил от нее несколько полезных советов, и довольно давно я запускаю сайты Rails 3.1 на Heroku. Теперь.

Был ли это новый сайт Rails 3.1 или сайт, обновленный до Rails 3.1, нужно проверить, что конвейер ресурсов включен для производства - по умолчанию Rails 3.1 использует

config.assets.enabled = false

в приложении. Используете ли вы приложение / активы для своих активов, а не общедоступные /

...