aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2012-08-08 16:09:39 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2012-08-08 16:09:39 -0700
commit2da242f63c28fbf476b814b18e184154a12d0f87 (patch)
tree23a7e65563654a573e5dc3f14752c3c2c40cf9fd /activemodel
parentb8903f3606c52b16f248679b086c4f2cf9970692 (diff)
parent920d9ee4d845c87c016acd660cb4a71e03a7207d (diff)
downloadrails-2da242f63c28fbf476b814b18e184154a12d0f87.tar.gz
rails-2da242f63c28fbf476b814b18e184154a12d0f87.tar.bz2
rails-2da242f63c28fbf476b814b18e184154a12d0f87.zip
Merge pull request #7293 from Bertg/activemodel_naming_helpers_try_model_name_first
Naming helpers should first check if passed object responds to model_name
Diffstat (limited to 'activemodel')
-rw-r--r--activemodel/lib/active_model/naming.rb8
1 files changed, 3 insertions, 5 deletions
diff --git a/activemodel/lib/active_model/naming.rb b/activemodel/lib/active_model/naming.rb
index 7ba439fb3e..2102282c02 100644
--- a/activemodel/lib/active_model/naming.rb
+++ b/activemodel/lib/active_model/naming.rb
@@ -300,11 +300,9 @@ module ActiveModel
private
def self.model_name_from_record_or_class(record_or_class)
- (record_or_class.is_a?(Class) ? record_or_class : convert_to_model(record_or_class).class).model_name
- end
-
- def self.convert_to_model(object)
- object.respond_to?(:to_model) ? object.to_model : object
+ return record_or_class.model_name if record_or_class.respond_to?(:model_name)
+ return record_or_class.to_model.class.model_name if record_or_class.respond_to?(:to_model)
+ record_or_class.class.model_name
end
end