From ea019d556f341bf09f316bc7fb6409980dfd74cf Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Mon, 3 Oct 2011 19:13:02 +0200 Subject: [PATCH] [IMP] yaml_import: make !ref nodes work for m2o values bzr revid: odo@openerp.com-20111003171302-n1quzvs2pjyn7xr6 --- openerp/tools/yaml_import.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/openerp/tools/yaml_import.py b/openerp/tools/yaml_import.py index bb4ce9db87d..91cdda1b896 100644 --- a/openerp/tools/yaml_import.py +++ b/openerp/tools/yaml_import.py @@ -340,6 +340,7 @@ class YamlInterpreter(object): return record_dict def process_ref(self, node, column=None): + assert node.search or node.id, '!ref node should have a `search` attribute or `id` attribute' if node.search: if node.model: model_name = node.model @@ -377,7 +378,10 @@ class YamlInterpreter(object): if column._type in ("many2many", "one2many"): value = [(6, 0, elements)] else: # many2one - value = self._get_first_result(elements) + if isinstance(elements, (list,tuple)): + value = self._get_first_result(elements) + else: + value = elements elif column._type == "many2one": value = self.get_id(expression) elif column._type == "one2many":