【Rails】whereメソッドを使って指定したレコードを取得する方法
whereは条件に合うモデルを複数取得したい場合に使います。
引数には連想配列を渡します。
# addressが"tokyo"のuserを全て取得 users = User.where(address: "tokyo") # addressが"tokyo"かつ、genderが"male"のuserを全て取得 users = User.where(address: "tokyo", gender: "male")
戻り値はActiveRecord::Relationというオブジェクトです。ActiveRecord::Relationというのは簡単に言えばモデルの配列なのですが、単なる配列ではありません。
whereメソッドは戻り値がActiveRecord::Relationであるおかげで、非常に便利な使い方ができます。チェーンメソッド形式でさらに条件を絞り込むような使い方ができます。