【问题标题】:Change in migration [duplicate]迁移变化[重复]
【发布时间】:2021-07-16 03:49:13
【问题描述】:

add_index :tests, [:title, :level], unique: true 我如何将title 更改为body 并保存在 schema.rb 我厌倦了手动更改它,但它没有保存在 schema.rb 中

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    您需要再次运行迁移。

    您的架构版本已设置为迁移的 id。

    ActiveRecord::Schema.define(:version => MIGRATION_ID) do
      # schema definition ...
    end
    

    这就是为什么即使您再次运行所有迁移也没有任何变化,因为版本告诉 Active Record 它不应该运行比其版本号更早的迁移。

    您需要回滚之前的迁移,然后再次运行迁移。

    rake db:rollback # it will rollback the last migration applied.
    rake db:migrate
    

    顺便说一句,此解决方案应仅用于开发环境。如果您想更改生产数据库,您应该创建另一个迁移来更改列。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-12
      • 2017-08-13
      • 2018-11-27
      • 1970-01-01
      • 2015-10-18
      • 1970-01-01
      • 2017-08-05
      • 2012-01-16
      相关资源
      最近更新 更多