0
votes

I am trying to deploy my rails app to heroku but but the following message in my heroku log:

/app/vendor/bundle/ruby/2.3.0/gems/activerecord-5.1.4/lib/active_record/connection_adapters/connection_specification.rb:188:in rescue in spec': Specified 'sqlite3' for database adapter, but the gem is not loaded. Addgem 'sqlite3'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). (Gem::LoadError)

this is my Gemfile:

source 'https://rubygems.org'


gem 'rails', '5.1.4'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'
gem 'rails-ujs'


group :development, :test do
  gem 'sqlite3', '1.3.13'
  gem 'byebug', '9.0.6', platform: :mri
end

group :development do
  gem 'web-console', '3.5.1'
  gem 'listen', '3.1.5'
  gem 'spring', '2.0.2'
  gem 'spring-watcher-listen', '2.0.1'
end

group :production do 
  gem 'pg', '0.20.0'
end

I've tried using the specific version of sqlite3 and the general one that uses the most recent version and neither one works.

2
have try to bundle after changing gemfile? because. database.yml is not important7urkm3n

2 Answers

0
votes

goodjobbin85, it means, you need to move gem 'sqlite3' from group :development, :test to group :development

if it fails in new deploy, try remove Gemfile.lock, do new bundle and git add/commit/push

0
votes

It looks like you have mentioned sqlite as database adapter for production. If this is the case, you have to change it to postgresql. In config/database.yml, change the adapter from

default: &default
  adapter: sqlite3

to

default: &default
  adapter: postgresql

Hope this helps.