From e0f63a928f891d4733b4af9502be7daa86ffbfc3 Mon Sep 17 00:00:00 2001 From: Ankush Menat Date: Fri, 2 May 2025 12:00:36 +0530 Subject: [PATCH] fix: avoid bad default of `flt` on string types :facepalm: this whole thing needs a refactor, fixing all bugs first to ensure we don't screw up something in process --- frappe/model/db_query.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/frappe/model/db_query.py b/frappe/model/db_query.py index a31b6c24a1..04c4b4e95f 100644 --- a/frappe/model/db_query.py +++ b/frappe/model/db_query.py @@ -889,6 +889,14 @@ from {tables} value = f.value fallback = "''" + elif ( + df + and (db_type := cstr(frappe.db.type_map.get(df.fieldtype, " ")[0])) + and db_type in ("varchar", "text", "longtext", "smalltext", "json") + ): + value = cstr(f.value) + fallback = "''" + else: value = flt(f.value) fallback = 0