rake db:migrate updates create_table block



我正在解决模式上的冲突。运行rake db:migrate

更改定义的迁移

create_table "data_migrations", primary_key: "version", id: :string, force: :cascade do |t| end

create_table "data_migrations", force: :cascade do |t|
t.string "version", null: false
end

这两个相等吗?这种变化从何而来?

是的,上面两个定义是相同的并且它们属于"schema_migrations"哪个版本控制和存储迁移版本历史记录。他们只有一列版本它是字符串类型和表的主键。当运行与模式加载相关的rake任务时,它们可能已经被修改。