[Erp5-report] r43564 nicolas - /erp5/trunk/products/ERP5Form/MultiRelationField.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Feb 22 16:41:21 CET 2011


Author: nicolas
Date: Tue Feb 22 16:41:20 2011
New Revision: 43564

URL: http://svn.erp5.org?rev=43564&view=rev
Log:
Small optimization:
 avoid looking up portal_object several times inside a loop

Modified:
    erp5/trunk/products/ERP5Form/MultiRelationField.py

Modified: erp5/trunk/products/ERP5Form/MultiRelationField.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Form/MultiRelationField.py?rev=43564&r1=43563&r2=43564&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Form/MultiRelationField.py [utf8] (original)
+++ erp5/trunk/products/ERP5Form/MultiRelationField.py [utf8] Tue Feb 22 16:41:20 2011
@@ -422,6 +422,7 @@ class MultiRelationEditor:
 
     def edit(self, o):
       if self.relation_editor_list is not None:
+        portal = o.getPortalObject()
 
         relation_object_list = []
         for value, uid, display_text, relation_key, item_key in \
@@ -434,11 +435,9 @@ class MultiRelationEditor:
               portal_module = None
               for p_item in self.portal_type_item:
                 if p_item[0] == portal_type:
-                  portal_module = o.getPortalObject().getDefaultModuleId(
-                                                            p_item[0])
+                  portal_module = portal.getDefaultModuleId(p_item[0])
               if portal_module is not None:
-                portal_module_object = getattr(o.getPortalObject(), 
-                                               portal_module)
+                portal_module_object = getattr(portal, portal_module)
                 kw ={}
                 kw[self.key] = value.replace('%', '')
                 kw['portal_type'] = portal_type
@@ -447,7 +446,7 @@ class MultiRelationEditor:
               else:
                 raise 
             else:
-              relation_object_list.append(o.portal_catalog.getObject(uid))
+              relation_object_list.append(portal.portal_catalog.getObject(uid))
 
         # Edit relation
         if self.relation_setter_id:



More information about the Erp5-report mailing list