Rails3のfindメソッド使ってあたふたしたこと

いつもしょうもないミスをする俺にメモ。

User.where(:id => 1).find(2)

とするとAR::RecordNotFoundが飛ぶと思ったらid列が1のレコードが返ってきた。

SQL確認するとこうなっていたため。
SELECT "users".* FROM "users" WHERE ("users"."id" = 1 OR "users"."id" = 2) LIMIT 1

まぁ私が悪いのですが。AR::Relationを集合と思ってそのなかからfind〜とか考えながらこういうコード書くと、こういう過ちを犯します。ARelがあまりにも便利すぎて陶酔してしまい、うっかり妙なコードを書いてしまわないよう注意すること。