Always remove spaces when converting value to number in domain parser
Closes #14753 (grafted from 7c1f80fc2322fc6c47fc61990f3c7f64e9e86147) --HG-- branch : 7.0
This commit is contained in:
1 parent
da89d84b74
commit
633381a155
2 files changed
+4
-3
No files matched your search
@@ -2074,6 +2074,7 @@
|
||||
let [, thousandSeparator] = /^10(.)?000/.exec(format(10000));
|
||||
let [, decimalSign] = /^0(.)1$/.exec(format(0.1));
|
||||
return Number(string
|
||||
.replace(new RegExp(' ', 'g'), '')
|
||||
.replace(new RegExp(thousandSeparator, 'g'), '')
|
||||
.replace(decimalSign, '.'));
|
||||
}
|
||||
|
||||
@@ -231,21 +231,21 @@ def convert_value(field, value, context=None):
|
||||
def convert_float():
|
||||
factor = float(field.get('factor', 1))
|
||||
try:
|
||||
return locale.atof(value) / factor
|
||||
return locale.atof(value.replace(' ', '')) / factor
|
||||
except (ValueError, AttributeError):
|
||||
return
|
||||
|
||||
def convert_integer():
|
||||
factor = float(field.get('factor', 1))
|
||||
try:
|
||||
return int(locale.atof(value) / factor)
|
||||
return int(locale.atof(value.replace(' ', '')) / factor)
|
||||
except (ValueError, AttributeError):
|
||||
return
|
||||
|
||||
def convert_numeric():
|
||||
factor = Decimal(field.get('factor', 1))
|
||||
try:
|
||||
return Decimal(locale.delocalize(value)) / factor
|
||||
return Decimal(locale.delocalize(value.replace(' ', ''))) / factor
|
||||
except (decimal.InvalidOperation, AttributeError):
|
||||
return
|
||||
|
||||
|
||||
Reference in new issue
Block a user