Ресурсы Rails 3.1: прекомпиляция Подключение к базе - PullRequest
2 голосов
/ 04 января 2012

Я пытаюсь развернуть приложение в Heroku после обновления до Rails 3.1 с конвейером ресурсов.Я столкнулся с общей проблемой, упомянутой на странице устранения неполадок в Heroku при получении ошибки:

could not connect to server: Connection refused 
Is the server running on host "127.0.0.1" and accepting 
TCP/IP connections on port xxxx?

Я принял предложения на странице и добавил следующее в свой файл config / application.rb(после попытки добавить его к отдельным файлам [environment] .rb безрезультатно)

config.assets.initialize_on_precompile = false

Я изменил свой файл database.yml, чтобы указать в моей производственной среде несуществующую базу данных,но при локальном запуске задачи assets: precompile я получаю следующее:

> RAILS_ENV=production bundle exec rake assets:precompile --trace
** Invoke assets:precompile (first_time)
** Execute assets:precompile
rake aborted!
FATAL:  database "my_nonexistant_database" does not exist

Tasks: TOP => environment
(See full trace by running task with --trace)

Я пытаюсь выяснить, какая часть моего приложения пытается инициализировать базу данных, чтобы я мог это исправить, ноУ меня закончились идеи для получения большего количества отладочной информации, чем эта.

У любого есть какие-либо советы для получения дополнительной информации о том, где мое приложение пытается инициализировать БД, или для устранения основной проблемы.

1 Ответ

1 голос
/ 04 января 2012

Вам следует попробовать новую лабораторную функцию http://devcenter.heroku.com/articles/labs-user-env-compile, которая сделает переменные доступными во время компиляции слагов.

...