我之前只创建了一个has_and_belongs_to_many关联,它与has_many:through不同。对于has_many:通过关联,我需要一个连接表吗?实际协会如何运作?我需要索引吗?我找不到一个很棒的教程,有什么建议吗?
答案 0 :(得分:7)
是的,你需要连接表。 这显示了如何:http://railscasts.com/episodes/47-two-many-to-many
这也可能有所帮助; has_many :through questions
顺便说一下,如果您需要搜索条件,这将有所帮助:Has many through associations with conditions
这是一个很好的例子,可以在Rails nested form with has_many :through, how to edit attributes of join model?编辑连接表的嵌套属性代码。
所有这些都是你可能想要做的事情:)
索引是可选的,也因db而异。 mySQL以前只支持1个。不确定是否已经改变。
答案 1 :(得分:1)
这取决于您希望如何使用has_many :through
关系。有两种不同的情况(在guide to relations
对于第一个,您需要连接表,您不需要索引。对于第二个,你不需要它们。