如何将多个模型与一个将在Rails中统治它们的模型联系起来?

San*_*ago 2 database-design model ruby-on-rails associations

比方说,我有四个完全独立的模型(Movie,Book,Game,Album控制类型的事情,我有我的媒体集合).有了它们,我可以CRUD并标记个人专辑,电影等.

但我需要跟踪,并做一些共同的事情,所有这些.所以我想我需要一个Item能给我一个item这样的表的模型:

| id | item_id | item_type | status | possession |
+----+---------+-----------+--------+------------+
| 01 |    01   |     1     |    3   |     2      |  

在哪里statuspossession位可以让我跟踪该项目是新的还是使用过,与我一起或借给(对谁,在另一张桌子上)等,表格本身会让我知道我有多少项目.所有这些都没有触及原来的四个模型及其对象,我认为应该只有关于它们的信息,而不是我能对它们做什么.编辑:请注意,每次添加电影或书籍时,它还必须items使用相关信息更新表格.

我是一个新手,我对如何去做有一些想法,但没有一个被证明是成功的.我知道要问很多,但我想知道,我怎么能做到这一点?

任何帮助将不胜感激,谢谢.

Pes*_*sto 5

最简单的方法是使用多态关联.

  • 你想要一个观察者:http://api.rubyonrails.org/classes/ActiveRecord/Observer.html (3认同)