2014-06-20 12 views
5

Tôi đang cố gắng đẩy ứng dụng của mình lên heroku nhưng tôi nhận được thông báo này.Gem :: LoadError: Chỉ định 'sqlite3' cho bộ điều hợp cơ sở dữ liệu, nhưng đá quý không được tải

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

Nhưng tôi thì không. Tôi không có sqlite3 ở bất kỳ đâu trong tệp database.yml của mình

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 

Tên bộ điều hợp của tôi là psotgresql. Tôi thậm chí đã tự mở tệp đó

cat database.yml 

Tôi đã tìm kiếm qua tệp nhưng không thể tìm thấy postgresql. Đây là gemfile của tôi

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' 

Tôi có pg nằm trong môi trường sản xuất tại đây. Tôi đã chạy cài đặt bó, cập nhật gói, git add, git commit và git push master master nhiều lần và tôi vẫn nhận được thông báo này.

Tôi không hiểu điều này. Tôi đã không chỉ định sqlite3 cho bộ điều hợp cơ sở dữ liệu của tôi.

Tôi không biết lời.

+0

Đầu ra của 'grep sqlite -r ./ -i' khi được thực thi từ gốc của ứng dụng đường ray của bạn là gì? – Max

+0

Bạn đã quên chạy 'cập nhật gói' để cập nhật tệp' Gemfile.lock' của bạn, hoặc bạn đã quên cam kết thay đổi của mình với Git trước khi cố gắng đẩy vào Heroku? Nếu vậy, thì câu hỏi này là một bản sao. –

Trả lời

3

Nghe có vẻ như bạn có thể có một trong hai:

  1. quên để chạy bundle update hoặc bundle install để cập nhật tập tin Gemfile.lock của bạn, hoặc

  2. quên cam kết GemfileGemfile.lock của bạn thay đổi để Git với git commit trước đẩy đến Heroku.

Nếu vấn đề của bạn là 2 nd trường hợp, sau đó câu hỏi này là một bản sao, tôi chỉ phải tìm ra câu hỏi kinh điển quanh đâu đó ...

+0

Tôi đã có trường hợp thứ hai ... doh. – jvalanen

1

Tôi có vấn đề này.

Tôi đã loại bỏ thủ công "pg (0.17.1)" khỏi Gemfile.lock trong một nỗ lực để che dấu vết của tôi sau khi bỏ qua việc đặt thông số '--không có sản xuất' trong bundle install. Thêm trở lại giải quyết vấn đề.

Các vấn đề liên quan