2010-12-10 62 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