Rails has_many:through - >我应该保留主键列吗?

时间:2012-12-24 23:02:27

标签: ruby-on-rails ruby database-design primary-key has-many-through

我有'作者'和'预订'表,加入了has_many:通过表'author_book'

据我所知,'author_book'表中的id主键字段没有任何意义......但在我提出这个想法之前,我只是想确认一下。那么,有没有理由将'id'列保留在has_many:through table?

提前致谢...

3 个答案:

答案 0 :(得分:8)

保持它。稍后您会发现唯一标识符以最初不明显的方式获得回报 与其他敏捷开发原则不同,最好先获得这样的数据质量项目。

答案 1 :(得分:3)

如果您拥有作者 - 书籍关系的独特内容,则需要id通过AuthorBook模型在此表格中进行设置。在这种情况下,它听起来不太可能,如果需要,可以稍后添加。

答案 2 :(得分:3)

如果has_many through表示author_book是活动记录模型,那么请为其留下ID。但是,如果您使用has_and_belongs_to_many连接表,则不需要ID http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_and_belongs_to_many