Ruby on Rails/内置 Rails 工具/编写你自己的 rake 任务
外观
你可以在lib/tasks目录中为你的 Rails 应用程序创建一个文件,然后将 Rake 任务添加到该文件中,从而编写你自己的 rake 任务。例如,将下列代码添加到lib/tasks/database.rake将使db:recreate任务对你的 Rails 应用程序可用
namespace :db do
desc "Drop and create the current database"
task :recreate => :environment do
abcs = ActiveRecord::Base.configurations
ActiveRecord::Base.establish_connection(abcs[RAILS_ENV])
ActiveRecord::Base.connection.recreate_database(ActiveRecord::Base.connection.current_database)
end
end
namespace 方法将块的内容放入指定的名称空间中。你可以按照所需在多层名称空间中嵌套,但通常情况下,一到两层就足够了。
现在可以使用
rake db:recreate