2010-12-10 63 views
1

當使用多個數據庫連接並設置模型以使用這些不同實例時,如何設置has_many,has_one,belongs_to等?rails 3,多個數據庫連接和設置模型

例如:

我有一個閱讀+一個數據庫寫,其他數據庫實例在我的Rails應用程序作爲只讀。只讀的數據庫表我拉回了媒體項目(視頻,圖像和音頻)列表。在我的Read + Write DB中,我有一個media_ratings表。

我有一個名爲AvMedia(只讀數據庫)和MediaRating模型(讀取+寫入數據庫)的模型。如何設置AvMedia模型,如下所示:has_one rating,並設置MediaRating模型,如下所示:has_many AvMedia?

對不起,如果這是令人困惑的......我試圖盡我所能解釋它。

回答

1

在AvMedia模型中,您必須包含has_one :rating,並且只需確保在相應的表中有一個rating_id外鍵。您的評分模型中還需要belongs_to :avmedia

當您定義關係時,幕後會自動將您的表連接在一起。

這聽起來像你不需要爲AvMedia has_many - 從你說的看起來它是一個1-1關係(一個AvMedia有一個評級,一個評級對應一個AvMedia)。如果這不正確,請告訴我。

+0

感謝幫助的人!這正是我所期待的!我開始認爲,如果你在Rails中過度複雜,那麼它不是正確的方式 – dennismonsewicz 2010-12-10 15:35:22