我有一个使用Postgres的rails应用程序 - 我需要有一些基本上具有相同数据的表。所以我需要一个为我所有表增加的唯一键,所以对所有表的id实际上有一个pk约束。 现在,问题是 - 我该怎么办?我可以编写一个迁移,定义所有表的id,以便为每个表添加到这些表中的任何一个表吗?或者我必须在数据库级别上执行此操作吗?
答案 0 :(得分:0)
如果两个表之间有这样的链接,则不应该使它们具有相同的主键。这不是一个很好的数据库使用。
您应该为这些表中的一个提供另一个外键,并使用此关系来标识两个表之间的链接行。
在Rails中,它被称为" has_one"关系,它非常方便:http://guides.rubyonrails.org/association_basics.html#the-has-one-association