如何使用Hanami / Repository访问多个数据库

时间:2016-06-23 06:05:28

标签: ruby hanami hanami-model

我有一个必须从数据仓库生成报告的应用程序 我不想将应用程序特定数据(用户,权限,报告定义......)保存在仓库所在的同一数据库中。此外,将来我很可能也必须访问其他数据库(甚至可能是Oracle) 我已经在.env文件中配置了数据库连接,但我不知道是否可以定义新连接或在何处定义新连接,以及如何为此显式连接实例化存储库。
由于这是我应用程序中的第二个容器,我想知道是否可以更改一个容器的orm,当hanami-model不适合我的需求时...

2 个答案:

答案 0 :(得分:1)

这是一个如何使用hanami连接到两个数据库的示例:

require 'pg'
require 'hanami/model'
require 'hanami/model/adapters/sql_adapter'

mapper = Hanami::Model::Mapper.new do
  # ...
end

adapter1 = Hanami::Model::Adapters::SqlAdapter.new(mapper, 'postgres://host:port/database1')

adapter2 = Hanami::Model::Adapters::SqlAdapter.new(mapper, 'postgres://host:port/database2')


DataRepository.adapter  = adapter1
UserRepository.adapter = adapter2

答案 1 :(得分:0)

抱歉,您目前无法为每个项目连接多个数据库。我们在1.0之后评估此功能。