Подтвердить что ты не робот

Предварительная компиляция активов с Rails 3.1

Я подталкиваю изменения к Heroku, и я получаю...

рейк прерван!
не удалось подключиться к серверу: соединение отказалось
Сервер работает на хосте "127.0.0.1" и принимает
TCP/IP-соединения на порту 5432?

Когда я обращаюсь к документации Heroku здесь, он говорит мне, что мне нужно "настроить несуществующую базу данных в локальной конфигурации /database.yml". Я не уверен как создать "несуществующую базу данных"? Я новичок и буду благодарен за любую помощь, которую вы можете мне дать. Спасибо.

4b9b3361

Ответ 1

На Heroku вы должны установить эту строку в свой config/application.rb:

config.assets.initialize_on_precompile = false

http://guides.rubyonrails.org/asset_pipeline.html#precompiling-assets

Для более быстрых предварительных компиляторов можно частично загрузить приложение установив config.assets.initialize_on_precompile в false в config/application.rb, хотя в этом случае шаблоны не видят прикладных объектов или методов. Героку требует, чтобы это было ложным.

Ответ 2

Это означает, что нужно указать имя базы данных, которая фактически не существует в локальной среде. Затем попробуйте запустить rake assets:precompile

Вы моделируете один и тот же сценарий локально (недоступный db).

Вы используете Devise в этом приложении? Он имел известную проблему, подобную этой. Возможно, вы захотите обновить этот драгоценный камень.

Ответ 3

Я столкнулся с той же проблемой. Кажется, что по какой-то причине переменная среды DATABASE_URL не установлена ​​во время предварительной компиляции активов. Обходным путем является установка DATABASE_URL в файле production.rb. ENV["DATABASE_URL"] = <your db url> Это должно решить проблему.