Sha256: b09c1fcb41ca2255207561465e872e405f9100fc9d3c4f65a3a885f519dfcba9

Contents?: true

Size: 400 Bytes

Versions: 1

Compression:

Stored size: 400 Bytes

Contents

module ExtraValidations
  class CollectionValidator < ActiveModel::EachValidator
    def validate_each(record, attribute, collection)
      return if collection.blank?

      collection
        .each(&:valid?)
        .each_with_index do |obj, i|
          obj.errors.each do |attr, error|
            record.errors.add("#{attribute}/#{i}/#{attr}", error)
          end
        end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
extra_validations-0.1.0 lib/extra_validations/collection_validator.rb