複数のデータベースで動作するように PropelORM を設定することに問題はほとんどありません。ドキュメントに役立つものは見つかりませんでした。
複数のデータベースからのスキーマの生成
最初にデータベース スキーマを変更してから実行したい
$ propel-gen . reverse
schema.xmlを取得します。システムが複数のデータベースで構成されている場合はどうなりますか? 複数のスキーマを生成できますか? ドキュメントからbuildtime-conf.xmlを作成する必要があることはわかっていますが、何もしません。
クラスの生成
異なるスキーマblog.schema.xmlとplatform.schema.xmlに作成したとしましょう。次のことは可能ですか。
スキーマごとに異なるクラス接頭辞を持っていますか? build.propertiesで設定できますが、それ
propel.classPrefix
はスキーマごとにグローバルに機能します。スキーマごとに異なるプロジェクト名を持っていますか? ここでもbuild.propertiesで設定できます。これ
propel.project
により、classes ディレクトリに特定のディレクトリが作成されます。現在、すべてのクラスが同じ場所に移動します。両方のスキーマで同じテーブル名を使用すると、一方のクラスが他方を上書きします。
私が自分でできる解決策は、特定のデータベースに対して2つの異なるディレクトリを設定することですが、より洗練された解決策を好むでしょう。