在rails中,表已经创建后添加外键关系的正确方式是什么?我已经在我的模型中定义了这个关系,但是我是否需要使用generate migration手动将[foreigntable]_id字段添加到表中?或者还有其他选项吗?
在rails中,表已经创建后添加外键关系的正确方式是什么?我已经在我的模型中定义了这个关系,但是我是否需要使用generate migration手动将[foreigntable]_id字段添加到表中?或者还有其他选项吗?
你绝对需要创建一个新的迁移:
rails g migration add_foreign_key_to_model_name_pluralized foreigntable_id:integer
例子:rails g migration add_foreign_key_to_users profile_id:integer
你需要使用像foreigner这样的gem将FK约束添加到数据库中。@apneadiving提供的答案在用户表中添加了一个“profile_id”列。正如所述,这是一种关系,但不是DB中的约束。只是想指出一下,因为我现在正在做类似的事情。