Sha256: a5e46a7dce1a2a395740df1ac4c3d8ade036ed81b9ab465f60610d28d1e63e0d
Contents?: true
Size: 670 Bytes
Versions: 21
Compression:
Stored size: 670 Bytes
Contents
class UniquenessValidator < ActiveRecord::Validations::UniquenessValidator def initialize(klass) super @klass = options[:model] if options[:model] end def validate_each(record, attribute, value) if !options[:model] && !record.class.ancestors.include?(ActiveRecord::Base) raise ArgumentError, "Unknown validator: 'UniquenessValidator'" end super unless options[:model] record_org = record attribute_org = attribute attribute = options[:attribute].to_sym if options[:attribute] record = options[:model].new(attribute => value) super record_org.errors.add(attribute_org, :taken) if record.errors.any? end end
Version data entries
21 entries across 21 versions & 1 rubygems