Class: ActiveModel::Validations::AcceptanceValidator
- Inherits:
-
EachValidator
show all
- Defined in:
- activemodel/lib/active_model/validations/acceptance.rb
Instance Attribute Summary
#attributes
#options
Instance Method Summary
(collapse)
#check_validity!, #validate
kind, #kind, #validate
Constructor Details
A new instance of AcceptanceValidator
6
7
8
|
# File 'activemodel/lib/active_model/validations/acceptance.rb', line 6
def initialize(options)
super(options.reverse_merge(:allow_nil => true, :accept => "1"))
end
|
Instance Method Details
- (Object) setup(klass)
16
17
18
19
20
21
22
23
|
# File 'activemodel/lib/active_model/validations/acceptance.rb', line 16
def setup(klass)
attr_readers = attributes.reject { |name| klass.attribute_method?(name) }
attr_writers = attributes.reject { |name| klass.attribute_method?("#{name}=") }
klass.send(:attr_reader, *attr_readers)
klass.send(:attr_writer, *attr_writers)
end
|
- (Object) validate_each(record, attribute, value)
10
11
12
13
14
|
# File 'activemodel/lib/active_model/validations/acceptance.rb', line 10
def validate_each(record, attribute, value)
unless value == options[:accept]
record.errors.add(attribute, :accepted, options.except(:accept, :allow_nil))
end
end
|