Rails - 在特定环境中跳过 data_migrations

问题描述 投票:0回答:1

我正在编写一个 data_migration,我正在使用 data-migrate gem。我遇到一种情况,我应该单独在生产环境中跳过一个特定的 data_migration 。我可以这样做

class BackfillNonStatutoryResultsWithAssessmentPeriod < ActiveRecord::Migration[7.0]
  def up 
    unless RAILS_ENV == "production"
     # Do something
    end
  end
end

 def down
   raise ActiveRecord::IrreversibleMigration
  end
end

实现这一目标的最佳且有效的方法是什么?

ruby-on-rails data-migration
1个回答
0
投票

以前从未使用过该 gem,但自述文件似乎很清楚该 gem 的全部目的是使您能够拥有单独的 rake 任务来迁移数据而不是仅迁移模式:

对于设置不需要任何中间 AR 活动的任务(例如开发和测试),您可以坚持使用

db:migrate
。对于生产和 QA,您将他们的脚本更改为
db:migrate:with_data

如果您对此有疑问,那么您的问题并不清楚。

© www.soinside.com 2019 - 2024. All rights reserved.