В приложении Heroku отсутствует адаптер postgresql, не будет Rake db: перенести с Rails 3.1.3 - PullRequest
4 голосов
/ 13 февраля 2012

У меня есть приложение rails, которое я хочу запустить на heroku для тестирования.Я использую рельсы 3.1.3, и я не могу получить приложение грабли базы данных на heroku.Нажав приложение работает нормально, хотя.Когда я пробую герои рейка db: migrate, я получаю сообщение об ошибке:

рейк прерван!Пожалуйста, установите адаптер postgresql: gem install activerecord-postgresql-adapter (pg не входит в комплект. Добавьте его в Gemfile.)

Я попытался добавить gem 'pg' в Gemfile.Затем, когда я помещаю приложение в heroku, я получаю сообщение об ошибке:

Вы добавили в Gemfile: * pg FAILED: http://devcenter.heroku.com/articles/bundler!Heroku push отклонил, не удалось установить гем через Bundler

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

Gem :: Installer :: ExtensionBuildError: ОШИБКА: не удалось создать собственное расширение gem.

    /Users/username/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb  checking for pg_config... no No pg_config... trying

в любом случае.Если сборка не удалась, попробуйте еще раз с --with-pg-config = / path / to / pg_config, проверяя наличие libpq-fe.h ... no Не удается найти заголовок 'libpq-fe.h * extconf.rb fail * Не удалось создать Makefile по какой-то причине, возможно, из-за отсутствия необходимых библиотек и / или заголовков.Проверьте файл mkmf.log для более подробной информации.Вам могут понадобиться параметры конфигурации.

** больше строк, которые не важны *** Файлы 1024 *

em останутся установленными в /Users/username/.rvm/gems/ruby-1.9.2-p180@ nebular2 / gems / pg-0.13.1 для проверки.Результаты записываются в /Users/username/.rvm/gems/ruby-1.9.2-p180@nebular2/gems/pg-0.13.1/ext/gem_make.out Произошла ошибка при установке pg (0.13.1) и Bundlerне может продолжатьсяУбедитесь, что gem install pg -v '0.13.1' успешно, прежде чем связывать.

Кто-нибудь понимает, что происходит?Я не могу понять, как исправить эту ошибку.

Ответы [ 2 ]

1 голос
/ 14 февраля 2012

Вам необходимо установить PostgreSQL http://www.postgresql.org/download/macosx/

Затем вам нужно сбросить некоторые пути (в Терминале):

 $ PATH=/Library/PostgreSQL/9.1/bin:$PATH

Тогда просто установите пакет.

1 голос
/ 13 февраля 2012

У вас нет необходимых заголовков. Сначала вы должны установить libpq dev или devel (средства разработки в зависимости от вашей системы) в своей системе, а затем повторить попытку bundle install

Например, пакет для fedora - libpqxx-devel.

...