我有一个应用程序必须从数据仓库生成报告。
我不想将应用程序特定数据(用户、权限、报告定义等)保存在仓库所在的同一数据库中。此外,将来我很可能还必须访问其他数据库(甚至可能是 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/