我正在开发一个Rails应用程序,在其中我需要为Rails迁移中的现有列添加一些外键,并且也很少有人在其中工作。 我是这样添加的:
class AddUserRefToEvents < ActiveRecord::Migration[5.2]
def change
add_foreign_key :events, :users, name: :index_events_on_user_id
end
end
和我的一位同伴正在添加这种方式:
class AddUserToParts < ActiveRecord::Migration[5.0]
def up
add_reference :parts, :user
end
def down
remove_reference :parts, :user
end
end
当我们使用SchemaCrawler构建架构图时,该关系建立在用户和事件之间(使用add_foreign_key
),但是用户和部件之间没有关系(当使用added add_reference
时)。
你能告诉我为什么吗?我们可以同时使用两者(参考此link)还是仅使用add_foreign_key
?请帮忙。