diff options
author | Jon Moss <me@jonathanmoss.me> | 2016-02-11 22:58:18 -0500 |
---|---|---|
committer | Jon Moss <me@jonathanmoss.me> | 2016-02-18 00:32:38 -0500 |
commit | 55385c8a39117f5c1b78fcb703f9d7ac14d97d12 (patch) | |
tree | d83c922114fb00f31a533fc98045e368c88b99d7 /activerecord/lib/active_record/validations | |
parent | 310e4418f4db899dcd07ff24f530ef8862c65f8b (diff) | |
download | rails-55385c8a39117f5c1b78fcb703f9d7ac14d97d12.tar.gz rails-55385c8a39117f5c1b78fcb703f9d7ac14d97d12.tar.bz2 rails-55385c8a39117f5c1b78fcb703f9d7ac14d97d12.zip |
Fix issue #23625
This resolves a bug where if the primary key used is not `id` (ex:
`uuid`), and has a `validates_uniqueness_of` in the model, a uniqueness error
would be raised. This is a partial revert of commit `119b9181ece399c67213543fb5227b82688b536f`, which introduced this behavior.
Diffstat (limited to 'activerecord/lib/active_record/validations')
-rw-r--r-- | activerecord/lib/active_record/validations/uniqueness.rb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/validations/uniqueness.rb b/activerecord/lib/active_record/validations/uniqueness.rb index f0aa4521b5..91e565f468 100644 --- a/activerecord/lib/active_record/validations/uniqueness.rb +++ b/activerecord/lib/active_record/validations/uniqueness.rb @@ -17,7 +17,7 @@ module ActiveRecord value = map_enum_attribute(finder_class, attribute, value) relation = build_relation(finder_class, table, attribute, value) - if record.persisted? && finder_class.primary_key.to_s != attribute.to_s + if record.persisted? if finder_class.primary_key relation = relation.where.not(finder_class.primary_key => record.id_was) else |