Class: DefaultValidations::ValidationsCreator

Inherits:
Object
  • Object
show all
Defined in:
lib/default_validations/validations_creator.rb

Class Method Summary collapse

Class Method Details

.create_integer_validations_for_class(klass) ⇒ Object



22
23
24
25
26
27
28
29
# File 'lib/default_validations/validations_creator.rb', line 22

def create_integer_validations_for_class(klass)
  not_validated_attributes = not_validated_integer_attributes_for_class(klass)
  if not_validated_attributes.present?
    klass.class_eval do
      validates *not_validated_attributes, numericality: { greater_than: -DefaultValidations.integer_max_value, less_than: DefaultValidations.integer_max_value }
    end
  end
end

.create_string_validations_for_class(klass) ⇒ Object



13
14
15
16
17
18
19
20
# File 'lib/default_validations/validations_creator.rb', line 13

def create_string_validations_for_class(klass)
  not_validated_attributes = not_validated_string_attributes_for_class(klass)
  if not_validated_attributes.present?
    klass.class_eval do
      validates *not_validated_attributes, length: { maximum: DefaultValidations.string_length }
    end
  end
end

.create_validationsObject



5
6
7
8
9
10
# File 'lib/default_validations/validations_creator.rb', line 5

def create_validations
  models_to_validate.each do |klass|
    create_string_validations_for_class(klass) if DefaultValidations.validate_strings
    create_integer_validations_for_class(klass) if DefaultValidations.validate_integers
  end
end