0

我有事件、文档和调查,它们都需要能够相互链接,我计划有一个包含四列的链接表,如下所示:

link_elements{
  element1_type CHAR(1)
  element1_id INTEGER
  element2_type CHAR(1)
  element2_id INTEGER
}

问题是我不知道如何在 RoR 中制作模型,以便我可以使用元素类型字段来识别相应元素 ID 属于哪个表(文档、事件或调查)。我对 Ruby 真的很陌生,任何帮助都将不胜感激。

4

1 回答 1

0

我认为您只是在寻找has_manyandbelongs_to关联。

如果您有一个 Event 模型、一个 Document 模型和一个 Survey 模型,那么您可以在 Models 文件夹中它们各自的 .rb 文件中指定它们是否拥有或属于其他模型。

例如:您希望调查属于文档。在 Survey.rb 中,添加行belongs_to :document。在 Document.rb 中,添加行has_many :surveys.

现在,如果您在 Surveys 表中添加一个新的“document_id”列,它将查找与该列中的 id 整数对应的 Document 对象。

有关更多信息,请查看Rails API

于 2010-02-28T04:52:17.353 回答