您好,我正在嘗試將 sinatra 存盤庫推送到 dokku,但每次都出現此錯誤
耙中止!LoadError:加載“sqlite3”Active Record 配接器時出錯。缺少它所依賴的寶石?sqlite3 不是捆綁包的一部分。將其添加到您的 Gemfile。
似乎環境檔案上的這個配置導致了這個問題
ActiveRecord::Base.establish_connection(
adapter: "sqlite3",
database: "db/#{ENV["SINATRA_ENV"]}.sqlite"
)
這是檔案
ENV["SINATRA_ENV"] ||= "development"
require "bundler/setup"
Bundler.require(:default, ENV["SINATRA_ENV"])
require "rack-flash"
require "sinatra/json"
require "sprockets"
require "friendly_id"
ActiveRecord::Base.establish_connection(
adapter: "sqlite3",
database: "db/#{ENV["SINATRA_ENV"]}.sqlite"
)
# Load initializers
Dir["./config/initializers/**/*.rb"].each { |file| require file }
require_all "app"
我將 sqlite gem 放入開發組
group :development do
gem "letter_opener"
gem "sqlite3"
end
我已經嘗試過 rails_12factor 和 therubyracer 但問題仍然存在,有人知道為什么會這樣嗎?
放入gemfile
gem 'rails_12factor'
gem 'therubyracer'
資料庫.yml
# SQLite. Versions 3.8.0 and up are supported.
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default
adapter: sqlite3
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
production:
<<: *default
adapter: postgresql
encoding: unicode
port: 5432
database: postgres://postgres:xxxxxxxxxxx@dokku-postgres-yyyyyy-db:5432/yyyyy_db
日志
Caused by:
Gem::LoadError: sqlite3 is not part of the bundle. Add it to your Gemfile.
/tmp/build/vendor/bundle/ruby/2.7.0/gems/bundler-2.3.10/lib/bundler/rubygems_integration.rb:291:in `block (2 levels) in replace_gem'
/tmp/build/vendor/bundle/ruby/2.7.0/gems/activerecord-7.0.4/lib/active_record/connection_adapters/sqlite3_adapter.rb:13:in `<top (required)>'
uj5u.com熱心網友回復:
只需在 environment.rb 上設定環境資料庫
configure :development do
ActiveRecord::Base.establish_connection(
adapter: "sqlite3",
database: "db/#{ENV["SINATRA_ENV"]}.sqlite"
)
end
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/532336.html
