diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2016-07-27 23:23:05 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-27 23:23:05 -0300 |
commit | 70ec7feaecab2d3f4dcb84ef2373a80d427aa336 (patch) | |
tree | 1f589c86d0706cb37d95a2d56a51758cf2244266 /activerecord/lib/active_record | |
parent | ea1dcbbc9965f82361f45d5b098207de738d7bb9 (diff) | |
parent | b7d229d1fabbd271fd37e9f4eac316a44d690842 (diff) | |
download | rails-70ec7feaecab2d3f4dcb84ef2373a80d427aa336.tar.gz rails-70ec7feaecab2d3f4dcb84ef2373a80d427aa336.tar.bz2 rails-70ec7feaecab2d3f4dcb84ef2373a80d427aa336.zip |
Merge pull request #25767 from kamipo/association_name_is_the_same_as_join_table_name
Correctly return `associated_table` when `associated_with?` is true
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/table_metadata.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/table_metadata.rb b/activerecord/lib/active_record/table_metadata.rb index a1326aa359..5fe0d8b5e4 100644 --- a/activerecord/lib/active_record/table_metadata.rb +++ b/activerecord/lib/active_record/table_metadata.rb @@ -42,11 +42,11 @@ module ActiveRecord end def associated_table(table_name) - return self if table_name == arel_table.name - association = klass._reflect_on_association(table_name) || klass._reflect_on_association(table_name.singularize) - if association && !association.polymorphic? + if !association && table_name == arel_table.name + return self + elsif association && !association.polymorphic? association_klass = association.klass arel_table = association_klass.arel_table.alias(table_name) else |