Ошибка обнаружения SQLite при развертывании моего кода в heroku
Я сделал изменения в файле gem, db.yml, чтобы развернуть мой код в heroku как:
Gem файл:
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a
debugger
console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
# Adds support for Capybara system testing and selenium driver
gem 'capybara', '~> 2.13'
gem 'rspec-rails', '~> 3.7'
gem 'factory_bot_rails'
gem 'selenium-webdriver'
gem 'bullet'
gem 'web-console'
gem 'faker'
end
group :development do
gem 'sqlite3'
end
group :production do
gem 'pg'
end
db.yml
production:
adapter: postgresql
encoding: unicode
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
database: production
Я внес эти изменения, но все равно отображается ошибка: "Не удалось установить гемы через Bundler.Detected sqlite3 gem, который не поддерживается в Heroku". Есть ли что-то, что я должен изменить для развертывания моего кода в heroku?
1 ответ
Основано на: https://devcenter.heroku.com/articles/bundler-configuration документации
Вы можете исключить группу разработки из конфигурации вашего упаковщика следующим образом:
$ heroku config:set BUNDLE_WITHOUT=development:test:ci
которая решит вашу проблему, так как не будет связывать sqlite3
драгоценный камень.
Примечание: я настоятельно рекомендую использовать PostgreSQL во время разработки. Поддержание паритета между средами разработки и развертывания предотвращает появление незначительных ошибок из-за различий между средами.