よくいる文系プログラマの戯言

プライベートでの開発を適当に書き留めます

Railsでシンプルにデバッグする方法

Rails初心者なんですが、Modelでちょっと込み入ったロジック書きたかったんで、デバッグ方法をちょっと調べてみました。 ModelでもControllerでも

logger.debug 'hogehoge'

で、ページをロードしたときにターミナルの方にhogehogeと表示できるようにします。

と言ってもやり方はシンプルで、

—Controller デフォルトで使えます。

—Model

# config/environments/development.rb
config.active_record.logger = Logger.new(STDOUT)

とやってしまえばすぐに使えます。

ついでにlogger.info(Assetsのロードとか)も邪魔なので、

# config/environments/development.rb
config.log_level = :warn

ってな風に変えてしまいました。

こうすると、ControllerやModelのlogger.debugの中身を変えない限り、SQLの情報しかでなくなります。 logger.debugの中身を変えるとちゃんと変更点が出るようになっているんですが、これはどっかにキャッシュされてるのが原因なんですかね。勉強不足でよくわからんですが、とりあえずこれで開発を進めていきます。