pez*_*ser 21 database migration ruby-on-rails primary-key junction-table
我正在观看一个截屏视频,作者说在连接表上有一个主键是不好的,但没有解释原因.
示例中的连接表在Rails迁移中定义了两个列,并且作者为每个列添加了索引但没有主键.
为什么在这个例子中有一个主键是不好的?
create_table :categories_posts, :id => false do |t|
  t.column :category_id, :integer, :null => false
  t.column :post_id, :integer, :null => false
end
add_index :categories_posts, :category_id
add_index :categories_posts, :post_id
编辑:正如我提到的Cletus,即使对于连接表,我也能理解自动编号字段作为主键的潜在用处.但是,在上面列出的示例中,作者明确避免在"create table"语句中使用语法":id => false"创建自动编号字段.通常,Rails会自动将一个auto-number id字段添加到像这样的迁移中创建的表中,这将成为主键.但是对于这个连接表,作者专门阻止了它.我不确定他为什么决定采用这种方法.
Mat*_*ish 47
一些说明:
| 归档时间: | 
 | 
| 查看次数: | 7755 次 | 
| 最近记录: |