From 07d3e4b883426fb46c7ee3561b5d62be9a25535e Mon Sep 17 00:00:00 2001 From: chenwj <654891551@qq.com> Date: Mon, 6 Feb 2023 13:59:25 +0800 Subject: [PATCH] =?UTF-8?q?bugfix:=20=E4=BF=AE=E5=A4=8D=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=B7=A5=E5=85=B7=E6=96=87=E4=BB=B6bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/biz/__init__.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/biz/__init__.py b/src/biz/__init__.py index 74a6e2e..409978d 100644 --- a/src/biz/__init__.py +++ b/src/biz/__init__.py @@ -1,11 +1,13 @@ import logging import time from traceback import format_exc - +import struct import sqlalchemy from fastapi_sqlalchemy import db from jinja2 import Template from pymysql import err +from pymysql.constants import FIELD_TYPE +from pymysql.converters import conversions, convert_time __author__ = 'Woodstock' @@ -13,6 +15,10 @@ logger = logging.getLogger("uvicorn.error") engine = None +conversions[FIELD_TYPE.BIT] = lambda b: struct.unpack(">Q", (bytes([0x00]) * (8 - len(b)) + b))[0] +conversions[FIELD_TYPE.TIME] = convert_time +conversions[FIELD_TYPE.DATETIME] = str + class EDatabase(Exception): def __init__(self, *args): @@ -80,7 +86,7 @@ class DB: def all(self): # 获取查询列表。把ResultProxy和RowProxy类型封装成python的list和dict类型 if self.version.startswith('1.4'): - data = [i._asdict for i in self.result] + data = [i._asdict() for i in self.result] else: data = [dict(zip(i.keys(), i.values())) for i in self.result] self.result.close()