Has_many与特定值的关联:操作方法?

时间:2019-05-07 15:35:18

标签: ruby-on-rails model

我想构建一个(玩具/学习)RoR应用程序来管理个人棋盘游戏库,但是当我尝试定义正确的数据结构时,我陷入了困境。 基本上,用户拥有一个包含许多游戏的图书馆。用户为每个游戏定义价格和等级。

因此,我有一个具有name:text属性的用户简单模型和一个具有title:text属性的游戏模型。

我还有一个library模型,该模型引用了user模型,并且与games有一对多的关系。

现在,我不确定如何为库中的游戏定义属性ratingprice

简单的想法是将report定义为具有属性ratingprice的图书馆和游戏的联接表,但我觉得这种解决方案太笨拙了。

还有其他想法吗?

1 个答案:

答案 0 :(得分:4)

一点也不笨拙。确实,这是正确的解决方案。

您需要在librarygame之间建立多对多关联,因为一个库可以有很多游戏,而一个游戏可以在许多库中。

正如您所说,创建同时引用reportlibrary以及列gamerating的模型price,然后定义{{1} }关联:

has_many :through