@@ -82,9 +82,11 @@ def get_db_converters(self, expression):
82
82
elif internal_type == "DateTimeField" :
83
83
if settings .USE_TZ :
84
84
converters .append (self .convert_datetimefield_value )
85
- elif internal_type in ("DecimalField" , "FloatField" ) or internal_type .endswith (
86
- "IntegerField"
87
- ):
85
+ elif internal_type == "FloatField" :
86
+ converters .append (self .convert_floatfield_value )
87
+ elif internal_type .endswith ("IntegerField" ):
88
+ converters .append (self .convert_integerfield_value )
89
+ elif internal_type == "DecimalField" :
88
90
converters .append (self .convert_decimalfield_value )
89
91
elif internal_type == "JSONField" :
90
92
converters .append (self .convert_jsonfield_value )
@@ -126,6 +128,12 @@ def convert_durationfield_value(self, value, expression, connection):
126
128
value = datetime .timedelta (milliseconds = int (str (value )))
127
129
return value
128
130
131
+ def convert_floatfield_value (self , value , expression , connection ):
132
+ return None if value is None else float (value )
133
+
134
+ def convert_integerfield_value (self , value , expression , connection ):
135
+ return None if value is None else float (value )
136
+
129
137
def convert_jsonfield_value (self , value , expression , connection ):
130
138
"""
131
139
Convert dict data to a string so that JSONField.from_db_value() can
0 commit comments