【问题标题】:After rails upgrade migration entry are getting delete from schema migration table在 rails upgrade 迁移条目从模式迁移表中删除后
【发布时间】:2021-12-26 13:17:48
【问题描述】:

从 rails 5.1 升级到 rails 6.1 后,除了最后一个条目外,所有条目都将从 schema_migrations 表中删除。

我在所有环境中都面临这个问题。对于测试环境,我通过注释这行 ActiveRecord::Migration.maintain_test_schema! 修复了测试环境,但是在开发和非生产环境中,我仍然面临这个问题。

我尝试用谷歌搜索它,但我没有看到任何与之相关的文章。谁能提供一些见解?

Rails 6.1.0
红宝石 3​​.0.0
activerecord-oracle_enhanced-adapter 6.1.4
数据库甲骨文

【问题讨论】:

标签: ruby-on-rails rails-migrations ruby-on-rails-6.1


【解决方案1】:

如果您没有待处理的更改,只需删除迁移。

https://edgeguides.rubyonrails.org/active_record_migrations.html#schema-dumping-and-you

移民,尽管可能很强大,但不是权威来源 为您的数据库架构。您的数据库仍然是权威的 资源。默认情况下,Rails 会生成 db/schema.rb 来尝试 捕获数据库架构的当前状态。

创建一个新的实例往往更快,更不容易出错 通过 bin/rails 加载模式文件来获取应用程序的数据库 db:schema:load 比它重播整个迁移历史。老的 如果这些迁移使用 改变外部依赖或依赖应用程序代码 与您的迁移分开发展。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-06
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    • 1970-01-01
    • 2017-09-10
    相关资源
    最近更新 更多