From f64e38f799f4ac4751f24e326ed7de30e826af35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Wed, 9 Oct 2024 17:19:44 +0200 Subject: [PATCH] Surround exclude expression with parenthesis Closes #13576 --- trytond/trytond/model/modelsql.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/trytond/trytond/model/modelsql.py b/trytond/trytond/model/modelsql.py index a54d9b34b5..0c5bbe3d6c 100644 --- a/trytond/trytond/model/modelsql.py +++ b/trytond/trytond/model/modelsql.py @@ -139,7 +139,13 @@ class Exclude(Constraint): return self._where def __str__(self, using=''): - exclude = ', '.join('%s WITH %s' % (column, operator._operator) + def format_(element): + if isinstance(element, Column): + return element + else: + return '(%s)' % element + exclude = ', '.join( + '%s WITH %s' % (format_(column), operator._operator) for column, operator in self.excludes) where = '' if self.where: