Gem :: LoadError:为数据库适配器指定’sqlite3’,但未加载gem

我正在尝试将我的应用程序推送到heroku但我收到此消息。

Gem::LoadError: Specified 'sqlite3' for database adaptor, but the gem is not loaded. 

但是我没有。 我的database.yml文件中没有sqlite3

 development: adapter: postgresql encoding: unicode database: blog_development pool: 5 timeout: 5000 host: localhost test: adapter: postgresql database: blog_test pool: 5 timeout: 5000 production: adapter: postgresql database: blog_production pool: 5 timeout: 5000 

我的适配器名称是psotgresql。 我甚至自己打开了文件

 cat database.yml 

我搜索了文件,但找不到postgresql。 这是我的gemfile

 ruby '2.1.0' gem 'rails', '4.1.1' group :development, :test do gem 'pg', '0.17.1' gem 'rspec-rails', '3.0.1' end group :production do gem 'pg', '0.17.1' gem 'rails_12factor' end group :test do gem 'selenium-webdriver', '2.35.1' gem 'capybara', '2.1.0' end gem 'sass-rails', '~> 4.0.2' gem 'uglifier', '>= 1.3.0' gem 'coffee-rails', '~> 4.0.0' gem 'sprockets-rails', '~> 2.1.3' gem 'bootstrap-sass', '3.1.1.1' gem 'jquery-rails' gem 'turbolinks' gem 'jbuilder', '~> 2.1.1' group :doc do gem 'sdoc', require: false end gem 'bcrypt', '~> 3.1.7' 

我在这里的生产环境中找到了pg。 我已经运行了bundle install,bundle update,git add,git commit和git push heroku master多次,我仍然收到这条消息。

我不明白这一点。 我没有为我的数据库适配器指定sqlite3。

我不知所措。

听起来你可能有:

  1. 忘了运行bundle updatebundle install来更新你的Gemfile.lock文件,或者

  2. 忘了在推送到Heroku之前使用git commit将你的GemfileGemfile.lock更改git commit给Git。

如果您的问题是第二种情况,那么这个问题是重复的,我只需要找到某个地方的规范问题……

我有这个问题。

我从Gemfile.lock手动删除了“pg(0.17.1)”,试图掩盖我的曲目,而忽略了将’–without production’参数放入bundle install 。 添加回来解决了这个问题。