ActiveRecordが生成するSQLをRailsのコンソールで確認する方法
メモ
ActiveRecordが生成するSQLは通常、/log/development.logなどのログファイルに吐かれるが、これをRailsのコンソールに出力する方法。
実はとても簡単でログの吐き出し先を標準出力に指定するだけ。
ruby script/console # ログの出力先を指定する。以上。 ActiveRecord::Base.logger = Logger.new(STDOUT) # ActiveRecordを操作すると以下のようにSQLのログが出力される。 User.find(:first) [4;36;1mSQL (0.0ms)[0m [0;1mSET NAMES 'utf8'[0m [4;35;1mSQL (0.0ms)[0m [0mSET SQL_AUTO_IS_NULL=0[0m [4;36;1mUser Load (0.0ms)[0m [0;1mSELECT * FROM `users` LIMIT 1[0m [4;35;1mUser Columns (16.0ms)[0m [0mSHOW FIELDS FROM `users`[0m
以下を参考にしました。感謝。
http://weblog.jamisbuck.org/2007/1/8/watching-activerecord-do-it-s-thing