Posted at

【Rails】boolean型のカラムのバリデーション方法

boolean型のカラムのバリデーションをするときは

validates :status, presence: true

これではfalseの時にエラーが出てしまいます。

presenceというバリデーションはblank?が偽であることを検証するためfalseで反応してしまうからです。


正しいboolean型のバリデーション

validates :status, inclusion: {in: [true, false]}

これでtrueとfalse以外に反応するバリデーションができます。