如何进行在多个环境中进行更改的rake任务?

时间:2014-06-11 15:56:03

标签: ruby-on-rails rake

我有一个rake任务,用于填充我的开发数据库。完成后我希望它也重置测试数据库,但我无法弄清楚语法。我需要这样的东西:

namespace :db do
  task populate: :environment do
    Rake::Task["db:reset"].execute
    Rake::Task["db:reset"].execute RAILS_ENV=test
    # Add lots of data to the :environment database
  end
end

这使我可以运行rake db:populate来使用最新的模式填充我的开发数据库,​​并重置测试数据库。

1 个答案:

答案 0 :(得分:0)

任务db:test:clone_structure将重置测试数据库架构以匹配开发数据库架构

namespace :db do
  task populate: :environment do
    Rake::Task["db:reset"].execute
    Rake::Task["db:test:clone_structure"].execute
    # Add lots of data to the :environment database
  end
end