#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