diff --git a/trytond/trytond/model/fields/dict.py b/trytond/trytond/model/fields/dict.py index 30f7abd7d1..992cf4da0b 100644 --- a/trytond/trytond/model/fields/dict.py +++ b/trytond/trytond/model/fields/dict.py @@ -71,7 +71,7 @@ class Dict(Field): for k, v in value.items(): if v is None: continue - if isinstance(v, list): + if self.schema_model and isinstance(v, (list, tuple)): v = list(sorted(set(v))) d[k] = v value = dumps(d) @@ -106,7 +106,7 @@ class Dict(Field): value = int(value) if isinstance(value, (Select, CombiningQuery)): return value - if isinstance(value, (list, tuple)): + if self.schema_model and isinstance(value, (list, tuple)): value = sorted(set(value)) if operator.endswith('in'): return [dumps(v) for v in value]