Rails whereの検索で否定を使う

Shunsuke Sawada

User.where("gender != male")みたいにしたい時、Rails4以降ではnotが使える。

1
users = User.where.not(gender: "male")

複数繋げることも可能。

1
users = User.where.not(gender: "male").where.not(age: nil)

2つ目の.notの前にも.whereがいることに注意。

7
Shunsuke Sawada

おすすめの記事

acts-as-taggable-on タグを表示させる順番を決めたい
Railsを4.2にバージョンアップしたら、Vagrantのローカル開発環境にアクセスできなくなった問題
Railsのバリデーションエラー後にレイアウトが崩れるとき