输出rake任务正在执行的命令

时间:2013-05-01 15:04:39

标签: ruby-on-rails rake

我只想更好地了解一些内置的rake任务是如何运作的,特别是rake db:create

有没有办法可以查看正在执行的sql命令来创建数据库?我试过了rake db:create --verbose --trace,但我得到的只是

** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Execute (dry run) db:load_config
** Invoke rails_env (first_time)
** Execute (dry run) rails_env
** Execute (dry run) db:create

我正在运行rails 3.2.13和rake 10.0.4

1 个答案:

答案 0 :(得分:2)

您可以编写自定义rake任务,该任务将执行下面给出的任务

desc "Rake db:create with SQL logging"
task :db_create => :environment do
  Rails.logger.level = Logger::DEBUG
  `rake db:create`
end

它将提供您所需的输出。