我正在使用Seed Dump gem将一些种子数据转储到db/seeds.rb
。除此之外,我需要在转储这三个表后运行一行任务。
我调用db:seed:dump
的方式是:
zeus rake db:seed:dump MODELS=Standard,Category,Brand
所以我试图在lib/tasks/database.rake
:
namespace :db do
namespace :seed do
task(:dump_setup => :environment) do
Rake::Task["db:seed:dump"].invoke(:models => "Standard,Category,Brand")
puts "did it."
end
end
end
我也尝试过:
namespace :db do
namespace :seed do
task(:dump_setup => :environment) do
Rake::Task["db:seed:dump"].invoke(:models => ['Standard','Category','Brand'])
puts "did it."
end
end
end
我只是将“做到了”作为占位符,直到我开始工作。
该调用 不 正在运行。它从我的数据库中倾倒了数百兆字节。倾倒一切。
我上面所做的工作是基于我在这里找到的最受欢迎的答案。不确定它为什么会起作用。
答案 0 :(得分:2)
zeus rake db:seed:dump MODELS=Standard,Category,Brand
MODELS
是一个环境变量。在调用依赖任务之前,需要通过ENV
设置环境变量:
ENV['MODELS'] = 'Standard,Category,Brand`