Reviewers: bch,


Please review this at http://codereview.appspot.com/124056

Affected files:
   M trytond/model/model.py


Index: trytond/model/model.py
===================================================================
--- a/trytond/model/model.py
+++ b/trytond/model/model.py
@@ -133,14 +133,21 @@
      def _getxxx2many_targets(self):
          if self.__xxx2many_targets:
              return self.__xxx2many_targets
-        res = [(x, getattr(y, 'model_name', None) or \
-                getattr(y, 'target', None) or getattr(y, 'relation_name',  
None))
-                for x, y in self._columns.iteritems()
-                if y._type in ('one2many', 'many2many')]
-        res += [(x, getattr(y, 'model_name', None) or \
-                getattr(y, 'target', None) or getattr(y, 'relation_name',  
None))
+        res = [(x, y.model_name) for x, y in self._columns.iteritems()
+                if y._type == 'one2many']
+        res += [(x, hasattr(y, 'get_target') and \
+                y.get_target(self.pool)._name or \
+                y.model_name)
+            for x, y in self._columns.iteritems()
+            if y._type == 'many2many']
+        res += [(x, y.model_name)
                  for _, (_, x, y) in self._inherit_fields.iteritems()
-                if y._type in ('one2many', 'many2many')]
+                if y._type == 'one2many']
+        res += [(x, hasattr(y, 'get_target') and \
+                y.get_target(self.pool)._name or \
+                y.model_name)
+                for _, (_, x, y) in self._inherit_fields.iteritems()
+                if y._type == 'many2many']
          self.__xxx2many_targets = res
          return res




--~--~---------~--~----~------------~-------~--~----~
[email protected] mailing list
-~----------~----~----~----~------~----~------~--~---

Reply via email to