【问题标题】:What is the way to add migration before specific migration in ruby在ruby中特定迁移之前添加迁移的方法是什么
【发布时间】:2020-04-10 17:52:58
【问题描述】:

我添加了新的迁移来更改列类型。 它在我的本地运行良好。

但我的团队成员遇到了迁移问题,因为该不在迁移中。

看来我已经在数据库中手动添加了该

为了运行迁移,对我们(我和其他团队成员)没有任何问题,我想在迁移之前添加迁移以创建新列以更改列类型

这样做的方法是什么?

【问题讨论】:

    标签: ruby-on-rails ruby database postgresql migration


    【解决方案1】:

    迁移文件的名称类似于 20190616110000_create_foo.rb,并按本机字母顺序应用。

    只需根据您需要的顺序重命名文件更改时间戳。

    【讨论】:

    • 我就是这么想的。谢谢!
    【解决方案2】:

    另一种更合适的方法是在您的迁移(更改列类型)中,您应该添加一个条件来检查该列是否存在。

    如果它已经存在(您的本地),则只需更改列类型。如果它不存在(您的本地同事),则使用您想要的类型创建一个列

    if column_exists? :table_name, :column_name
      change_column :table_name, :column_name, :type
    else
      add_column :table_name, :column_name, :type
    end
    

    【讨论】:

      猜你喜欢
      • 2014-10-29
      • 1970-01-01
      • 2020-03-08
      • 2021-02-28
      • 2016-09-09
      • 2017-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多