Ruby on rails 在Rails中实现多数据库
这是我第一次在Rails中实现多数据库访问,我使用的是6.1版 我的要求是所有Ruby on rails 在Rails中实现多数据库,ruby-on-rails,activerecord,ruby-on-rails-6.1,Ruby On Rails,Activerecord,Ruby On Rails 6.1,这是我第一次在Rails中实现多数据库访问,我使用的是6.1版 我的要求是所有SELECTmodelProduct的查询都应该转到我的读取副本。这就是我在Rails 6.1中设置多数据库访问的方式 class MultiDb < ApplicationRecord self.abstract_class = true connects_to database: { writing: :primary, reading: :primary_replica } end class
SELECT
modelProduct
的查询都应该转到我的读取副本。这就是我在Rails 6.1中设置多数据库访问的方式
class MultiDb < ApplicationRecord
self.abstract_class = true
connects_to database: { writing: :primary, reading: :primary_replica }
end
class Product < MultiDb
end
class User < ApplicationRecord
end
# database.yml
default: &default
encoding: unicode
pool: <%= ENV.fetch('DB_MAX_POOL') { 7 } %>
development:
primary:
<<: *default
url: postgres://product_db_user:@localhost:5432/product_db
primary_replica:
<<: *default
url: postgres://product_db_user:@localhost:5432/non_existing_product_db
replica: true
我确实看到了以下错误-ActiveRecord::NoDatabaseError(致命:数据库“不存在的产品数据库”不存在)