[PATCH 2/4] redmine #3451: replace constantize with slightly more restrictive method to load activerecord model from metadata_object

Mo Morsi mmorsi at redhat.com
Tue Jul 31 20:03:35 UTC 2012


---
 src/app/models/metadata_object.rb |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/app/models/metadata_object.rb b/src/app/models/metadata_object.rb
index 99eb19e..b344008 100644
--- a/src/app/models/metadata_object.rb
+++ b/src/app/models/metadata_object.rb
@@ -43,7 +43,8 @@ class MetadataObject < ActiveRecord::Base
     if metadata_obj.nil?
       nil
     elsif metadata_obj.object_type and !metadata_obj.object_type.empty?
-      metadata_obj.object_type.constantize.find(metadata_obj.value)
+      klass = ActiveRecord::Base.send(:subclasses).find{|c| c.name == metadata_obj.object_type }
+      klass.find(metadata_obj.value)
     else
       metadata_obj.value
     end
-- 
1.7.10.2




More information about the aeolus-devel mailing list