2012-03-04 36 views
12

Tôi gặp sự cố khi đẩy dữ liệu từ db phát triển của mình đến Heroku. Tôi quyết định chuyển sang PostgreSQL như db phát triển của mình và đã cập nhật database.yml và loại bỏ đá quý sqlite khỏi gemfiles.Nhận lỗi SQLite bằng cách sử dụng db heroku: đẩy khi tôi đang sử dụng PostgreSQL khi phát triển db

Ứng dụng chạy tốt chống lại PostgreSQL nhưng khi tôi cố gắng chạy lệnh:

heroku db:push 

tôi nhận được một lỗi SQLite mà là khó hiểu vì không có tài liệu tham khảo để SQLite trong dự án của tôi:

! Taps Load Error: cannot load such file -- sqlite3 
! You may need to install or update the taps gem to use db commands. 
! On most systems this will be: 
!  
! sudo gem install taps 

đây là tập tin database.yml của tôi:

development: 
    adapter: postgresql 
    encoding: unicode 
    database: xxxx 
    pool: 5 
    timeout: 5000 
    username: xxxx 
    password: xxxx 

test: 
    adapter: postgresql 
    encoding: unicode 
    database: test 
    pool: 5 
    timeout: 5000 
    username: xx 
    password: xx 

production: 
    adapter: postgresql 
    encoding: unicode 
    database: test 
    pool: 5 
    timeout: 5000 

tôi đang sử dụng RVM và tôi đã tạo ra một gemset mới mà không có bất kỳ may mắn.

Tôi thậm chí đã cố gắng này, nhưng đã nhận lỗi SQLite cùng:

heroku db:push postgres://xx:[email protected]/xx 

! Taps Load Error: cannot load such file -- sqlite3 
! You may need to install or update the taps gem to use db commands. 
! On most systems this will be: 
!  
! sudo gem install taps 

Tôi cũng đã chạy bó cài đặt và cập nhật bó.

Johann

Trả lời

10

Tôi đã có cùng một vấn đề và giải quyết nó bằng cách di chuyển vòi vào một nhóm phát triển trong vòi gemfile- của tôi đòi hỏi sqlite, đó là những gì đã gây ra vấn đề.

group :development do 
    gem 'taps', :require => false # has an sqlite dependency, which heroku hates 
end 
+0

đã cố gắng, nhưng nhận được cùng một lỗi (tôi chạy gói cài đặt và cập nhật và cam kết với heroku trước khi đẩy db ... nhận được lỗi sqlite). – gugguson

+9

Giải quyết nó - câu trả lời tekniklr đưa tôi vào đúng tuyến đường. Vấn đề là các vòi đang sử dụng sqlite và không được cài đặt trên máy khách (tôi nghĩ rằng tôi đã tự tay loại bỏ nó trước đây). Sau khi tôi cài đặt sqlite nó hoạt động tốt. – gugguson

+3

Tôi có cùng một vấn đề. Tôi nghĩ rằng đó là một vấn đề homebrew khi tôi cài đặt heroku bằng tay kết hợp với sử dụng homebrew tại một số điểm để kiểm tra một cái gì đó. 'gem install sqlite3' giải quyết được vấn đề. – dicato

8

Giải pháp là để thêm không chỉ taps đá quý mà còn sqlite3 đá quý vào nhóm :development. Nếu bạn đang sử dụng trong phát triển của bạn sqlite3 rồi, sau đó chỉ cần thêm taps đá quý là đủ. Nhưng tôi đang sử dụng mysql về sự phát triển của tôi để giải quyết vấn đề đó tôi phải thêm cả hai.

group :development do 
    gem 'taps' 
    gem 'sqlite3' 
end 
0

On debian tôi khò khè tôi cần thiết để cài đặt:

aptitude install libsqlite3-dev 
4
gem install sqlite3 

giải quyết nó cho tôi.

0
gem install sqlite3 

Là tất cả những gì bạn cần. Lỗi này được gửi cục bộ, không phải từ Heroku

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