Module: JetSet::Validations::ClassMethods
- Defined in:
- lib/jet_set/validations.rb
Instance Method Summary collapse
-
#validate(attribute_name, options, func = nil) ⇒ Object
- Adds a validation to an attribute of the entity Parameters:
attribute_name
Symbol
attribute nameoptions
||message
- validation options presence, message, custom or just a message
func
-
boolean proc with a check for validity.
- validation options presence, message, custom or just a message
- Adds a validation to an attribute of the entity Parameters:
Instance Method Details
#validate(attribute_name, options, func = nil) ⇒ Object
Adds a validation to an attribute of the entity Parameters:
+attribute_name+:: +Symbol+ attribute name
+options+ || +message+:: validation options {type, presence, message, custom} or just a message
+func+:: boolean proc with a check for validity
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/jet_set/validations.rb', line 47 def validate(attribute_name, , func = nil) validations = self.class_variable_defined?(:@@validations) ? self.class_variable_get(:@@validations) : {} validations[attribute_name] ||= [] if .is_a?(Hash) if .has_key?(:type) validations[attribute_name] << validate_type([:type]) end if [:presence] == true validations[attribute_name] << validate_presence end = [:message] elsif .is_a?(String) = else raise ValidationDefinitionError, "Validation definition of attribute #{attribute_name} is incorrect." end func ||= [:custom] unless func.nil? validations[attribute_name] << {func: func, message: } end self.class_variable_set(:@@validations, validations) end |