Method: ActiveModel::Validations::ClassMethods#validates!
- Defined in:
- activemodel/lib/active_model/validations/validates.rb
#validates!(*attributes) ⇒ Object
This method is used to define validations that cannot be corrected by end users and are considered exceptional. So each validator defined with bang or :strict option set to true will always raise ActiveModel::StrictValidationFailed instead of adding error when validation fails. See validates for more information about the validation itself.
class Person
include ActiveModel::Validations
attr_accessor :name
validates! :name, presence: true
end
person = Person.new
person.name = ''
person.valid?
# => ActiveModel::StrictValidationFailed: Name can't be blank
153 154 155 156 157 |
# File 'activemodel/lib/active_model/validations/validates.rb', line 153 def validates!(*attributes) = attributes. [:strict] = true validates(*(attributes << )) end |