Ticket #4723: remove_table_name_from_validates_uniqueness_of_to_fix_sqlserver.patch
| File remove_table_name_from_validates_uniqueness_of_to_fix_sqlserver.patch, 1.7 kB (added by mixonic@synitech.com, 2 years ago) |
|---|
-
activerecord/lib/active_record/validations.rb
old new 514 514 515 515 validates_each(attr_names,configuration) do |record, attr_name, value| 516 516 if value.nil? || (configuration[:case_sensitive] || !columns_hash[attr_name.to_s].text?) 517 condition_sql = "#{ record.class.table_name}.#{attr_name} #{attribute_condition(value)}"517 condition_sql = "#{attr_name} #{attribute_condition(value)}" 518 518 condition_params = [value] 519 519 else 520 condition_sql = "UPPER(#{ record.class.table_name}.#{attr_name}) #{attribute_condition(value)}"520 condition_sql = "UPPER(#{attr_name}) #{attribute_condition(value)}" 521 521 condition_params = [value.upcase] 522 522 end 523 523 if scope = configuration[:scope] 524 524 Array(scope).map do |scope_item| 525 525 scope_value = record.send(scope_item) 526 condition_sql << " AND #{ record.class.table_name}.#{scope_item} #{attribute_condition(scope_value)}"526 condition_sql << " AND #{scope_item} #{attribute_condition(scope_value)}" 527 527 condition_params << scope_value 528 528 end 529 529 end 530 530 unless record.new_record? 531 condition_sql << " AND #{record.class. table_name}.#{record.class.primary_key} <> ?"531 condition_sql << " AND #{record.class.primary_key} <> ?" 532 532 condition_params << record.send(:id) 533 533 end 534 534 if record.class.find(:first, :conditions => [condition_sql, *condition_params])