Zab*_*bba 4 ruby-on-rails ruby-on-rails-3.1
我试图从一个rake任务中删除测试和开发数据库,如下所示:
task :regenerate do
Rails.env = "test"
Rake::Task["db:drop"].invoke
Rails.env = "development"
Rake::Task["db:drop"].invoke
end
Run Code Online (Sandbox Code Playgroud)
测试数据库已成功删除.但是开发数据库没有被删除.
关于如何使这项工作的任何想法?
注意:这是在Rails 3.2.3上
更新:
非常奇怪,但逆转顺序有效:
task :regenerate do
Rails.env = "development"
Rake::Task["db:drop"].invoke
Rails.env = "test"
Rake::Task["db:drop"].invoke
end
Run Code Online (Sandbox Code Playgroud)
到底是怎么回事?!
你可以像这样写:
namespace :db do
desc "Database custom drop"
task :mydrop do
system("rake db:drop RAILS_ENV=test")
system("rake db:drop RAILS_ENV=development")
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8018 次 |
| 最近记录: |