From 478fad1001a898055445a5a57ecf6a309402d615 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sun, 6 Oct 2013 11:59:31 +0200 Subject: [PATCH] Don't create translation for field with a "set" method review1120002 --- trytond/model/modelsql.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py index 2ef07974ef..b3fbcfab5c 100644 --- a/trytond/model/modelsql.py +++ b/trytond/model/modelsql.py @@ -380,7 +380,8 @@ class ModelSQL(ModelStorage): for values, new_id in izip(vlist, new_ids): for fname, value in values.iteritems(): field = cls._fields[fname] - if getattr(field, 'translate', False): + if (getattr(field, 'translate', False) + and not hasattr(field, 'set')): translation_values.setdefault( '%s,%s' % (cls.__name__, fname), {})[new_id] = value if hasattr(field, 'set'): @@ -498,7 +499,8 @@ class ModelSQL(ModelStorage): field = column.output_name if field == '_timestamp': continue - if getattr(cls._fields[field], 'translate', False): + if (getattr(cls._fields[field], 'translate', False) + and not hasattr(field, 'set')): translations = Translation.get_ids(cls.__name__ + ',' + field, 'model', Transaction().language, ids) for row in result: @@ -701,7 +703,8 @@ class ModelSQL(ModelStorage): for fname, value in values.iteritems(): field = cls._fields[fname] - if getattr(field, 'translate', False): + if (getattr(field, 'translate', False) + and not hasattr(field, 'set')): Translation.set_ids( '%s,%s' % (cls.__name__, fname), 'model', transaction.language, ids, [value] * len(ids))