嘿我正在使用下表。我的表course_enrollments引用了user_id
和course_id
。两个列组合都设置为唯一。
users
course_enrollments
courses
Rails默认设置主键。我已经阅读了一些使用这种连接表而没有任何pk的人的文章。例如通过定义:id => false
这种联接表是否合适?那些人注册或离开课程或搜索注册。谢谢你的时间!
答案 0 :(得分:2)
当您想要使用:id => false
时,通常会在联接表的迁移中看到has_and_belongs_to_many
,因为Rails真的不喜欢在这些上找到:id
主键。
来自has_and_belongs_to_many
docs
联接表不应该有 主键或与之关联的模型 它
答案 1 :(得分:1)
两个列的组合都设置为唯一
因此你的桌子已经有了钥匙。除非你需要其他属性,否则没有明显需要为它制作另一个密钥。