【发布时间】:2011-10-21 15:40:48
【问题描述】:
以这种情况为例。
您有 3 个模型:
- 诗人 - 代表一首诗的作者
- Poem - 代表诗人写的一首诗
- 印刷 - 代表任何类型的包含诗人诗歌的印刷出版物。
诗人和诗歌一目了然:
- 诗人
has_many诗篇 - 诗
belongs_to诗人
在处理打印模型时,我感到很困惑。
在这种情况下,印刷,在某种意义上,属于诗人和诗歌。你可以说一个诗人 has_many printings 或一首诗 has_many printings 是有道理的,但走相反的路线很棘手......
如果某杂志或书籍印刷了一位诗人的 5 首诗,情况会怎样?或者,其中一首诗发表在 10 种不同的杂志上?
印刷本身似乎“属于许多”诗歌或诗人。我知道这是错误的,但我只是想阐明这一点。
所以可以回答的问题是: 你将如何建立这些关系?具体来说,模型和数据库表会是什么样子?您将如何使用它们来访问相关数据?
谢谢!
【问题讨论】:
标签: ruby-on-rails activerecord associations has-many has-many-through