我目前有一个名为20180610150713_create_database_structure.rb的迁移文件 在其中,我正在创建具有以下结构的数据库
class CreateDatabaseStructure < ActiveRecord::Migration[5.1]
def change
ActiveRecord::Schema.define(version: 20180610150713) do
create_table :products do |t|
t.string :name
t.text :description
t.timestamps
end
# create everything
end
end
end
但是,当我运行rails db:drop db:create db:migrate
命令时,出现以下错误:
rails aborted!
StandardError: An error has occurred, all later migrations canceled:
Mysql2::Error: Duplicate entry '20180610150713' for key 'PRIMARY': INSERT INTO `schema_migrations` (`version`) VALUES ('20180613180630')
尽管它已执行了应该正确执行的操作,但后来停止了迁移。当我开始从事此项目时,此功能过去还不错,而最近才突然停止。
在应用程序内部更改迁移时间戳会“修复它”,但是由于这已经投入生产,所以我不希望它与生产数据库中的其他内容混淆。
P.S。 此迁移文件已在生产中。