提交 a4d8b62e 编写于 作者: Z Zachary Scott

Clarify possible validations you can use to avoid a NULL boolean value

in the database. Closes #16304 [ci skip]
上级 44e6d91a
......@@ -524,9 +524,15 @@ If you validate the presence of an object associated via a `has_one` or
`marked_for_destruction?`.
Since `false.blank?` is true, if you want to validate the presence of a boolean
field you should use `validates :field_name, inclusion: { in: [true, false] }`.
field you should use one of the following validations:
The default error message is _"can't be blank"_.
```ruby
validates :boolean_field_name, presence: true
validates :boolean_field_name, inclusion: { in: [true, false] }
validates :boolean_field_name, exclusion: { in: [nil] }
```
By using one of these validations, you will ensure the value will NOT be `nil`
which would result in a `NULL` value in most cases.
### `absence`
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册