From 229c73d741a2d902ae64335ec5bdeeb58d8fa54e Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Tue, 1 Dec 2009 14:19:08 +0100 Subject: [PATCH] [FIX] allow related fields to point to one2many and many2many fields lp bug: https://launchpad.net/bugs/356628 fixed bzr revid: chs@tinyerp.com-20091201131908-k5l5tmtpjq3m975x --- bin/osv/fields.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/bin/osv/fields.py b/bin/osv/fields.py index 92c9c634365..e1d70978181 100644 --- a/bin/osv/fields.py +++ b/bin/osv/fields.py @@ -744,7 +744,7 @@ class related(function): except: t_data = False break - if field_detail['type'] in ('one2many', 'many2many'): + if field_detail['type'] in ('one2many', 'many2many') and i != len(self.arg) - 1: t_data = t_data[self.arg[i]][0] else: t_data = t_data[self.arg[i]] @@ -760,6 +760,12 @@ class related(function): for r in res: if res[r]: res[r] = (res[r], ng[res[r]]) + elif self._type in ('one2many', 'many2many'): + for r in res: + if res[r]: + res[r] = [x.id for x in res[r]] + + return res def __init__(self, *arg, **args):