From 8ed0690f4b57daccf2df334e885fecd9aed49998 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Thu, 21 Feb 2008 16:10:07 +0100 Subject: [PATCH] Fix attribute search in xml - model is no more required as it is the relation object by default --- trytond/tools/convert.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/trytond/tools/convert.py b/trytond/tools/convert.py index 93e864e97b..72a3f082af 100644 --- a/trytond/tools/convert.py +++ b/trytond/tools/convert.py @@ -176,18 +176,22 @@ class RecordTagHandler: eval_attr = attributes.get('eval', '').encode('utf8') if search_attr: + if attributes.get('model', ''): + search_model = attributes['model'].encode('utf8') + else: + search_model = self.model._columns[field_name]._obj + f_obj = self.mh.pool.get(search_model) answer = f_obj.browse( - cursor, self.mh.user, - model.search(self.mh.cursor,self.mh.user, search_attr)) + self.mh.cursor, self.mh.user, + f_obj.search(self.mh.cursor, self.mh.user, eval(search_attr))) if not answer: return - if field_name in model._columns: - if model._columns[field_name]._type == 'many2many': - self.values[field_name] = [(6, 0, [x['id'] for x in answer])] + if self.model._columns[field_name]._type == 'many2many': + self.values[field_name] = [(6, 0, [x['id'] for x in answer])] - elif model._columns[field_name]._type == 'many2one': - self.values[field_name] = answer[0]['id'] + elif self.model._columns[field_name]._type == 'many2one': + self.values[field_name] = answer[0]['id'] elif ref_attr: self.values[field_name] = self.mh.get_id(ref_attr)