Class: Veto::AttributeValidator
- Inherits:
-
AbstractValidator
- Object
- AbstractValidator
- Veto::AttributeValidator
- Defined in:
- lib/veto/validators/attribute_validator.rb
Direct Known Subclasses
ExactLengthValidator, FormatValidator, GreaterThanOrEqualToValidator, GreaterThanValidator, InclusionValidator, IntegerValidator, LengthRangeValidator, LessThanOrEqualToValidator, LessThanValidator, MaxLengthValidator, MinLengthValidator, NotNullValidator, NumericValidator, PresenceValidator
Instance Method Summary collapse
- #execute(context, entity, errors) ⇒ Object
-
#initialize(attribute, options = {}) ⇒ AttributeValidator
constructor
A new instance of AttributeValidator.
- #validate(entity, attribute, value, errors, options = {}) ⇒ Object
Constructor Details
#initialize(attribute, options = {}) ⇒ AttributeValidator
Returns a new instance of AttributeValidator.
5 6 7 8 |
# File 'lib/veto/validators/attribute_validator.rb', line 5 def initialize attribute, ={} @attribute = attribute @options = end |
Instance Method Details
#execute(context, entity, errors) ⇒ Object
10 11 12 13 14 15 |
# File 'lib/veto/validators/attribute_validator.rb', line 10 def execute context, entity, errors if truthy_conditions?(@options, context, entity) value = entity.public_send(@attribute) validate(entity, @attribute, value, errors, @options) end end |
#validate(entity, attribute, value, errors, options = {}) ⇒ Object
17 18 19 |
# File 'lib/veto/validators/attribute_validator.rb', line 17 def validate entity, attribute, value, errors, ={} raise NotImplementedError end |