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

最佳答案

这是如何使用 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

关于ruby - 如何使用 Hanami/Repository 访问多个数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37983491/

10-12 14:26