pg gem не будет устанавливаться для развертывания Heroku

#ruby-on-rails #heroku

#ruby-на-рельсах #heroku

Вопрос:

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

Gemfile:

 group :production do
   gem 'pg'
end

group :development, :test do
  gem 'sqlite3'
end

gem 'pg'
 

Database.yml:

     development:
      adapter: postgresql
      encoding: utf8
      database: classsap_development
      pool: 5
      username:
      password:

test: amp;TEST
  adapter: postgresql
  encoding: utf8
  database: classsap_test
  pool: 5
  username:
  password:

production:
  adapter: postgresql
  encoding: utf8
  database: classsap_production
  pool: 5
  username:
  password:

cucumber:
  <<: *TEST
 

Затем я нажимаю на Git и пытаюсь запустить bundle install (или многие, многие варианты этого), и я получаю эту ошибку:

При установке pg (1.1.4) произошла ошибка, и Bundler не может продолжить работу. Убедитесь, что gem install pg -v '1.1.4' --source 'https://rubygems.org/' это успешно выполнено, прежде чем связывать.

Если я нажимаю / запускаю bundle install / нажимаю на Heroku с помощью «gem ‘pg'» в моем Gemfile, приложение будет развернуто, но любая страница, которая должна использовать базу данных, не будет работать. Как я могу заставить pg установить или что я делаю не так? Спасибо.

Комментарии:

1. Вы подписались на надстройку PG?

2. Вы имеете в виду на Heroku? У меня есть дополнение Postgres, прикрепленное к моему приложению, иначе я не понимаю, что вы имеете в виду.

Ответ №1:

Просто к вашему сведению, для всех, у кого есть этот вопрос, я нашел несколько ответов, и это заняло довольно много времени и много проб / ошибок. Мне пришлось использовать это:

 sudo ARCHFLAGS="-arch x86_64" bundle install
 

затем мне пришлось запустить:

 heroku run rake db:migrate