class CsvRecord::UniquenessValidation

Attributes

field[RW]

Public Class Methods

new(field) click to toggle source
# File lib/csv_record/csv_validations/uniqueness_validation.rb, line 6
def initialize(field)
  self.field = field
end

Public Instance Methods

run_on(obj) click to toggle source
# File lib/csv_record/csv_validations/uniqueness_validation.rb, line 10
def run_on(obj)
  condition = {}
  condition[field] = obj.public_send field
  records = obj.class.__where__ condition

  return unless records.any? { |record| record != obj }

  obj.errors.add field
end