2012-05-05 2 views
0

У меня возникла эта проблема, когда я пытаюсь развернуть мой рубин на приложении rails на heroku, я проверяю разные сообщения здесь, потому что я видел эту проблему раньше, но я не смог ее исправить. , когда я пытаюсь запустить:Heroku rake db: migrate does not work

$ heroku rake db:migrate 

Я получаю много таких: DEPRECATION WARNING:

, а затем:

rake aborted! 
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.) 

Tasks: TOP => db:migrate => db:load_config 
(See full trace by running task with --trace) 

Я пытался изменить свою Gemfile с «пг» и мой group: активы делают: производство, я знаю, что я что-то теряю, но я не мог понять, что.

Некоторые идеи?

Кроме того, когда я иду в URL приложения, я получаю это:

Application Error 
An error occurred in the application and your page could not be served. Please try again in a few moments. 
If you are the application owner, check your logs for details. 

Заранее спасибо за любую помощь и предложить !!!

+0

Какие версии Rails/Ruby вы используете. Я предполагаю, что вы работаете на стеке Bamboo Ruby 1.9.2. –

+0

im running ruby ​​1.9.3p194 и rails Rails 3.2.3 –

ответ

0

Вы должны использовать Postgres на Heroku, вы не можете использовать sqlite3, потому что Heroku запрещает вам сохранять в файловой системе. Поэтому добавьте жемчуг pg в свой производственный комплект и повторите развертывание, после чего ваши миграции должны выполняться.

+0

ОК, им нужно попробовать! благодаря! –

+0

Как мне изменить мою конфигурацию, чтобы использовать postgreql (что проблема, я думаю), но я не знаю, как ее изменить. Я попытался запустить: gem install postgres-pr, но и добавление: group: production do gem 'pg' end и работает: установка пакета - без производства, тоже ... im довольно запутано ... –

0

Ответ здесь прост, добавьте следующий production в вашем Gemfile как:

group :production do 
    gem 'pg' 
end 

Ваша местная машина не будет работать с этой продукцией, поэтому мы теперь должны связывать его, игнорируя PostgreSQL драгоценный камень, который может быть сделано как:

bundle install --without production 

После этого попробуйте heroku rake db:migrate. Должно работать.

Удача

+0

Привет! Спасибо за то, что я попытаюсь, но im litle запутался в чем-то: когда я пишу группу: production do gem 'pg' end должен ли я удалить остальные драгоценные камни? Я также запускаю gem install postgres-pr и shold i меняю databas.yml на: разработка: адаптер: postgresql база данных: db/development пул: 5 таймаут: 5000 это нормально? –

+0

@ FernandoLöpez в вашем Gemfile –

+0

Err. Не совсем понял. Вы должны открыть файл 'Gemfile', присутствующий в структуре каталога вашего приложения. Вы можете добавить это, как и все другие драгоценные камни, перечисленные в этом файле. – kiddorails