Piece_ORMについて

12 views
Skip to first unread message

takapon

unread,
Apr 2, 2009, 9:14:36 PM4/2/09
to Piece Framework Users (ja)
内海と申します。

Piece_ORMでは、dsn情報をpiece-orm-config.yamlで設定していますが、
接続データーベースや、接続ユーザーをPHPの変数で動的に指定する方法は
ありますでしょうか?

現在、複数のデーターベース、複数の接続ユーザーがあり、全てをyamlに
記述すればいいのですが、今後もデーターベース及び接続ユーザーが増える
予定で、そのたびにyamlファイルを設定し直さなければいけません。

何かいい方法は無いでしょうか?

KUBO Atsuhiro

unread,
Apr 15, 2009, 7:12:12 AM4/15/09
to piece-framew...@googlegroups.com
久保です。

2009/04/03 10:14 takapon <tak...@pat.hi-ho.ne.jp>:

動的に接続先データベースを切り替えるには、Piece_ORM::setDatabase() を
使うことができます。ただし、一つのプロセスで複数の接続先を使う場合は、
適切なタイミングで元の接続先に戻しておく必要があるでしょう。

動的にデータベース情報を構成するには、Piece_ORM_Config オブジェクトを
使うことができます。Piece_ORM_Config オブジェクトは Piece_ORM_Context
オブジェクト経由で取得することができます。

$config = Piece_ORM_Context::singleton()->getConfiguration();
$config->setDSN(...);

Piece_ORM_Config オブジェクトによって、接続先の追加や、既存の情報の上
書きといったことが行えます。

実例は http://github.com/piece/piece-orm/tree/branch-1.0 などでテスト
コードを参照ください。

--
KUBO Atsuhiro e-mail: ku...@iteman.jp

Reply all
Reply to author
Forward
0 new messages