【发布时间】:2017-02-24 07:59:32
【问题描述】:
我正在尝试学习 Rails,但有一个问题让我有点困惑。我有两个简单的模型:Media 和 MediaType。
媒体有:标题、生产日期、成本等。它还有一个“类型”字段。这将是 MediaType 表的外键。 MediaType 很简单:id、name、active (t/f)。
当我想到这一点时,Media has_one MediaType 似乎很合适。但我也可以看到 Media belongs_to MediaType 和 MediaType has_many Media 也适合。从我的 POV 来看,我真正需要的是让 Media 表存储查看 MediaTypes 表的 ID。 MediaTypes 表不应该存储有关 Media 的任何内容,因此我指向“has_one”。
哪个是正确的?每个人都使用什么过程来思考这些问题?
编辑:对于这个例子,我希望 Media 永远只有一种类型。
【问题讨论】:
-
这取决于媒体和媒体类型的含义。您应该问自己一个问题:一种媒体类型可以有多种媒体吗?或者它可以只有一种媒体?
-
如上所述,让我们保持简单。媒体只能有 1 种类型。
标签: ruby-on-rails