RailsでSQLを確認してみる

seedで初期データを追加してみるの続き
RailsのMySQLの環境にアクセスできるようにしておくも済ませておく)

RailsSQLを確認する。

development.logで確認

下記のように、userテーブルからfindするコードを書いて、
ブラウザからアクセスすると、

$ vi app/controllers/sample_controller.rb
class SampleController < ApplicationController
  def index
    results = User.all()
    render :json => results
  end
end

devleopment.logにSQLのログが出力される。

$ less -R log/development.log
Started GET "/" for 192.168.56.1 at 2014-01-6 17:25:20 +0900
Processing by SampleController#index as HTML
  User Load (0.5ms)  SELECT `users`.* FROM `users`
Completed 200 OK in 16ms (Views: 12.1ms | ActiveRecord: 1.8ms)
ログには制御コードみたいなのが出力されているので、lessに「-R」をつけると色がついて見やすくなる。

to_sqlで確認

to_sqlメソッドでSQLを取得することもできる。

class SampleController < ApplicationController
  def index
    render :text => User.all().to_sql()
  end
end

ブラウザでアクセスすると、

SELECT `users`.* FROM `users`

が表示される。