2016-06-23 10 views
3

データウェアハウスからレポートを生成するアプリケーションがあります。
倉庫のある同じデータベースにアプリ固有のデータ(ユーザー、権限、レポート定義など)を保存したくありません。また、将来は他のデータベース(Oracleの場合もあります)にアクセスする必要があります。
データベース接続を.envファイルに設定しましたが、新しい接続を定義できるかどうか、またこの明示的な接続のリポジトリをインスタンス化する方法もわかりません。
これはアプリの2番目のコンテナなので、ハナミモデルが自分のニーズに合わないときに、1つのコンテナのormを変更できるかどうかは不思議でした...Hanami/Repositoryで複数のデータベースにアクセスする方法

答えて

1

お花見を使用して2つのデータベースに接続するには:

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 
0

私は申し訳ありませんが、あなたはこの時点でプロジェクトごとに複数のデータベースに接続することはできません。私たちは1.0の後でこの機能を評価しています。

関連する問題