module Sequel::Plugins::ErrorSplitter::InstanceMethods

Private Instance Methods

_valid?(opts) click to toggle source

If the model instance is not valid, split the errors before returning.

Calls superclass method
# File lib/sequel/plugins/error_splitter.rb, line 38
def _valid?(opts)
  v = super
  unless v
    split_validation_errors(errors)
  end
  v
end
split_validation_errors(errors) click to toggle source

Go through all of the errors entries. For any that apply to multiple columns, remove them and add separate error entries, one per column.

# File lib/sequel/plugins/error_splitter.rb, line 48
def split_validation_errors(errors)
  errors.keys.select{|k| k.is_a?(Array)}.each do |ks|
    msgs = errors.delete(ks)
    ks.each do |k|
      msgs.each do |msg|
        errors.add(k, msg)
      end
    end
  end
end