要为我的Rails 3应用程序准备数据库,我需要在终端中运行以下步骤:
rake db:create
rake db:migrate
rake db:seed可以在一个步骤中完成所有这些步骤吗?也许可以运行一个'rake‘命令来“发射”另一个'rake’命令.但是怎么做?!
发布于 2011-01-30 00:50:08
您可以定义自己的rake任务,这些任务调用其他任务作为先决条件:
# lib/tasks/my_tasks.rake
namespace :db do
desc "create, migrate and seed"
task :do_all => [:create,:migrate,:seed] do
end
end通常,任务主体将包含Ruby代码来执行某些操作,但在本例中,我们只是依次调用三个先决条件任务(db:create、db:migrate、db:seed)。
发布于 2011-01-30 10:08:32
不需要空的终端块,例如(对于沸石的答案)
$ cat lib/tasks/my_tasks.rake
# lib/tasks/my_tasks.rake
namespace :db do
desc "create, migrate and seed"
task :do_all => [:create,:migrate,:seed]
end发布于 2011-01-30 00:42:07
rake db:create db:migrate db:seed会做所有这些的。
https://stackoverflow.com/questions/4840313
复制相似问题