module QuantumFields::ValidationInjector

This module injects a behavior on no_sqlized models that enables backend validations on virtual fields based on rules passed by the instance

Public Instance Methods

inject_validations(field, validations) click to toggle source

Injects validations on a given field

# File lib/quantum_fields/validation_injector.rb, line 21
def inject_validations(field, validations)
  validations.each do |method, value|
    singleton_class.validates field, method => value
  end
end
map_injected_validations() click to toggle source

Maps your rules_column for defined validations

# File lib/quantum_fields/validation_injector.rb, line 11
def map_injected_validations
  send(self.class.rules_column).try(:deep_symbolize_keys)&.each do |field, rules|
    validations = rules[:validates]
    inject_validations(field, validations) if validations.present?
  end
end