fix: fields未定义时自动检测between操作符,避免范围检查被跳过

This commit is contained in:
yumoqing 2026-07-07 15:54:07 +08:00
parent 343a346aaf
commit 2b8f057096

View File

@ -640,6 +640,10 @@ order by b.enabled_date desc"""
continue continue
f = d.fields.get(fk) f = d.fields.get(fk)
if not f: if not f:
if isinstance(fv, str) and any(op in fv for op in ('~=', '=~', '~', '=~=')):
from appPublic.dictObject import DictObject
f = DictObject(type='float', value_mode='between')
else:
continue continue
data_value = config_data.get(fk) data_value = config_data.get(fk)
data_value = data_mapping(d, fk, data_value) data_value = data_mapping(d, fk, data_value)
@ -687,6 +691,10 @@ order by b.enabled_date desc"""
continue continue
f = d.fields.get(fk) f = d.fields.get(fk)
if not f: if not f:
if isinstance(fv, str) and any(op in fv for op in ('~=', '=~', '~', '=~=')):
from appPublic.dictObject import DictObject
f = DictObject(type='float', value_mode='between')
else:
continue continue
data_value = config_data.get(fk) data_value = config_data.get(fk)
data_value = data_mapping(d, fk, data_value) data_value = data_mapping(d, fk, data_value)