2010-12-10 11 views
1

複数のデータベース接続で作業し、異なるインスタンスで動作するようにモデルを設定する場合、has_many、has_one、belongs_toなどを設定するにはどうすればよいですか?例えばrails 3、複数のデータベース接続とモデルの設定

私が書く+リードされた1つのデータベースを持っているが、他のDBインスタンスは読み取り専用としての私のRailsアプリで使用されています。読み取り専用のDBテーブルメディアアイテム(ビデオ、画像、オーディオ)のリストを取り戻しています。私のRead + Write DBにはmedia_ratingsテーブルがあります。

私はAvMedia(読み取り専用DB)とMediaRatingモデル(読み取り+書き込みDB)というモデルを持っています。どのようにAvMediaモデルを設定するのですか?has_oneの評価とMediaRatingモデルのセットアップはどうすればいいですか?has_many AvMedia?

申し訳ありませんが、これは混乱している場合は...私はできるだけそれを説明しようとしました。

答えて

1

AvMediaモデルでは、has_one :ratingを含める必要があります。対応する表にrating_id外部キーがあることを確認してください。あなたの評価モデルにbelongs_to :avmediaも必要です。

あなたが関係を定義するときに自動的にテーブルをリンクさせるために、多くの魔法が背後にあります。

AvMediaにはhas_manyは必要ありません.1つの関係(1つのAvMediaは1つの評価、1つの評価は1つのAvMediaに対応しています)と思われるからです。これが間違っている場合は、教えてください。

+0

ヘルプマンに感謝!これはまさに私が探していたものです!私はあなたがRailsで何かを複雑にすると、正しい方法ではないと思っています。 – dennismonsewicz

関連する問題