From e91b16b734b39ad7018d0d2acc5be8b6963c337e Mon Sep 17 00:00:00 2001 From: Raphael Collet Date: Wed, 3 Oct 2018 15:11:10 +0200 Subject: [PATCH] [FIX] base: renaming of x2many fields --- odoo/addons/base/models/ir_model.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/odoo/addons/base/models/ir_model.py b/odoo/addons/base/models/ir_model.py index 9eb065012ed..aa30446d240 100644 --- a/odoo/addons/base/models/ir_model.py +++ b/odoo/addons/base/models/ir_model.py @@ -697,11 +697,15 @@ class IrModelFields(models.Model): field = getattr(obj, '_fields', {}).get(item.name) if vals.get('name', item.name) != item.name: - # We need to rename the column + # We need to rename the field item._prepare_update() - if column_rename: - raise UserError(_('Can only rename one field at a time!')) - column_rename = (obj._table, item.name, vals['name'], item.index) + if item.ttype in ('one2many', 'many2many'): + # those field names are not explicit in the database! + pass + else: + if column_rename: + raise UserError(_('Can only rename one field at a time!')) + column_rename = (obj._table, item.name, vals['name'], item.index) # We don't check the 'state', because it might come from the context # (thus be set for multiple fields) and will be ignored anyway.