提交 adb8ac15 编写于 作者: J Jon Leighton

Don't call self.class unless necessary. Closes #3171.

上级 4284e137
......@@ -212,8 +212,8 @@ def association_foreign_key
end
# klass option is necessary to support loading polymorphic associations
def association_primary_key(klass = self.klass)
options[:primary_key] || klass.primary_key
def association_primary_key(klass = nil)
options[:primary_key] || (klass || self.klass).primary_key
end
def active_record_primary_key
......
......@@ -244,6 +244,7 @@ def test_association_primary_key
# Normal association
assert_equal "id", Author.reflect_on_association(:posts).association_primary_key.to_s
assert_equal "name", Author.reflect_on_association(:essay).association_primary_key.to_s
assert_equal "name", Essay.reflect_on_association(:writer).association_primary_key.to_s
# Through association (uses the :primary_key option from the source reflection)
assert_equal "nick", Author.reflect_on_association(:subscribers).association_primary_key.to_s
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册