我对rails中的belongs_to和外键感到困惑 . 当我们在rails迁移中使用belongs_to时,它似乎在子表上创建了一个我们可以从父表访问的外键 . 但是,在rails文档中,有一种情况在一列中同时使用 .
create_table :accounts do |t|
t.belongs_to :supplier, index: { unique: true }, foreign_key: true
# ...
end
有人可以解释这种情况并解释belongs_to和foreign_key:true究竟是什么?
1 回答
t.belongs_to :supplier
将supplier_id
添加到accounts
.index: { unique: true }
为列创建database index .foreign_key: true
为列创建foreign key constraint .我建议你阅读Active Record Migrations — Ruby on Rails Guides .
索引可加快数据检索操作 .
外键有助于维护referential integrity .