aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkennyj <kennyj@gmail.com>2012-04-04 01:21:35 +0900
committerkennyj <kennyj@gmail.com>2012-04-04 01:21:35 +0900
commitbfb9b7165ef4cb18835f65be600778bd8b1d6d11 (patch)
tree19340dcf17a55f884b4b8532eda7b48010672ba8
parent0cc6c5fec235cca6d7eb85d4f849536db8566e93 (diff)
downloadrails-bfb9b7165ef4cb18835f65be600778bd8b1d6d11.tar.gz
rails-bfb9b7165ef4cb18835f65be600778bd8b1d6d11.tar.bz2
rails-bfb9b7165ef4cb18835f65be600778bd8b1d6d11.zip
Get a properly aliased_table_name, when we use a polymorphic association.
-rw-r--r--activerecord/lib/active_record/associations/association.rb2
-rw-r--r--activerecord/test/cases/associations/belongs_to_associations_test.rb1
2 files changed, 2 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/associations/association.rb b/activerecord/lib/active_record/associations/association.rb
index fb0ca15c23..3c41a303d3 100644
--- a/activerecord/lib/active_record/associations/association.rb
+++ b/activerecord/lib/active_record/associations/association.rb
@@ -39,7 +39,7 @@ module ActiveRecord
# post.comments.aliased_table_name # => "comments"
#
def aliased_table_name
- reflection.klass.table_name
+ klass.table_name
end
# Resets the \loaded flag to +false+ and sets the \target to +nil+.
diff --git a/activerecord/test/cases/associations/belongs_to_associations_test.rb b/activerecord/test/cases/associations/belongs_to_associations_test.rb
index 1160d236c9..9dd041af81 100644
--- a/activerecord/test/cases/associations/belongs_to_associations_test.rb
+++ b/activerecord/test/cases/associations/belongs_to_associations_test.rb
@@ -168,6 +168,7 @@ class BelongsToAssociationsTest < ActiveRecord::TestCase
sponsor.sponsorable = Member.new :name => "Bert"
assert_equal Member, sponsor.association(:sponsorable).send(:klass)
+ assert_equal "members", sponsor.association(:sponsorable).aliased_table_name
end
def test_with_polymorphic_and_condition