class Reform::Validation::Groups::Validate
Runs all validations groups according to their rules and returns all Result objects.
Public Class Methods
call(groups, form)
click to toggle source
# File lib/reform/validation/groups.rb, line 41 def self.call(groups, form) results = {} groups.collect do |(name, group, options)| next unless evaluate?(options[:if], results, form) results[name] = group.(form) # run validation for group. store and collect <Result>. end end
evaluate?(depends_on, results, form)
click to toggle source
# File lib/reform/validation/groups.rb, line 50 def self.evaluate?(depends_on, results, form) return true if depends_on.nil? return !results[depends_on].nil? && results[depends_on].success? if depends_on.is_a?(Symbol) form.instance_exec(results, &depends_on) end