Convert pattern values into boolean when matching boolean field

Closes #12504
This commit is contained in:
Cédric Krier
2023-08-18 17:06:26 +02:00
parent 270ee0f8cb
commit b7432a677d
+7 -3
View File
@@ -9,12 +9,16 @@ class MatchMixin(object):
'''Match on pattern
pattern is a dictionary with model field as key
and matching value as value'''
for field, pattern_value in pattern.items():
value = getattr(self, field)
for field_name, pattern_value in pattern.items():
value = getattr(self, field_name)
if not match_none and value is None:
continue
if self._fields[field]._type == 'many2one':
field = self._fields[field_name]
if field._type == 'many2one':
value = value.id if value else value
elif field._type == 'boolean':
value = bool(value)
pattern_value = bool(pattern_value)
if value != pattern_value:
return False
return True