method
build_relation
v3.1.0 -
Show latest stable
- Class:
ActiveRecord::Validations::UniquenessValidator
build_relation(klass, table, attribute, value)protected
No documentation available.
# File activerecord/lib/active_record/validations/uniqueness.rb, line 55
def build_relation(klass, table, attribute, value) #:nodoc:
column = klass.columns_hash[attribute.to_s]
value = column.limit ? value.to_s.mb_chars[0, column.limit] : value.to_s if column.text?
if !options[:case_sensitive] && value && column.text?
# will use SQL LOWER function before comparison
relation = table[attribute].lower.eq(table.lower(value))
else
value = klass.connection.case_sensitive_modifier(value)
relation = table[attribute].eq(value)
end
relation
end