在 rakefile 中实施 rake db:rollback STEP=n

Implement rake db:rollback STEP=n inside rakefile

我正在尝试像这样组合一堆抽取任务:

desc 'Resets the database'
task :reset do
  Rake::Task["db:rollback"].invoke
  Rake::Task["db:migrate"].invoke
  Rake::Task["db:seed"].invoke
end

我不知道如何在我的 Rakefile

中用 STEP=nrollback

STEP 是一个环境变量,所以如果您这样做:

    desc 'Resets the database'
    task :reset do
      ENV['STEP'] = '1000' 
# The number has to be greater than
# or equal to the number of your migrations.

      Rake::Task["db:rollback"].invoke
      Rake::Task["db:migrate"].invoke
      Rake::Task["db:seed"].invoke
    end

应该可行