RubyOnRailsでfindしたオブジェクトからkeyとvalueをeachで取得するには

もちろんわかってる人には当たり前なんだろうケド、わかってなかった。。。
のでメモ。

RubyOnRailsで例えば以下のように取得したデータから、keyと対応するvalueを引っ張り出したい。

users = User.find( :all, :conditions => ['id = 1'] )

これを全力でeachしたかったけど、undefined method `each`とか言われる。
てっきりずっとhashだとばかり思ってたので、each_pairとかさも当然のように実行してundefined method `each_pair`。
あ、ウン。
どうもちゃんとソースを追ってみると、オブジェクトで返してる。

ので、結論としてはこんなかんじ。

users = User.find( :all, :conditions => ['id = 1'] )
users.attributes.each do |k, v|
  p "key   = #{k}"
  p "value = #{v}"
end

なるほど、attributes.eachですよね。

昨日の夜は時間がなかったから直指定を全速前進で、かなりの行書いちゃったから今から全部書き直し。
5行くらいになる気がしま・・・すorz