ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

python 数据库结果转模型(2)

2020-07-10 17:05:20  阅读:97  来源: 互联网

标签:cur 模型 python 数据库 self price id data class


1、定义一个类,模拟模型数据,这里用金额(decimal)、和时间(datetime)两个字段举例 CURRENT_TIMESTAMP ***MySQL默认系统时间

class tModel():
    def __init__(self,id,price,createtime):
        self.id = id
        self.price = price
        self.createtime = createtime

2、数据库请求返数据转换为模型,json 转class时对应时间 和金额特殊类型 不需要做特殊处理,class转json时统一处理

class tsql(SqlLink):
    def selectdata(self):
        re_data = []
        conn, cur = self.ConnOpen()
        try:
            sql = "SELECT * FROM `t_2`"
            cur.execute(sql)
            data = cur.fetchall() # 多条数据 tuple 元组类型 ()  data = list(data) 转列表
            # *****转换模型****
            for item in list(data):
                m = tModel(item["id"],item["price"],item["createtime"])
                re_data.append(m)
            # *****END****
            return re_data
        except Exception as e:
            conn.rollback()   # 回滚事务 语句执行失败 回滚
            # 此处加日志
            raise e.args
        finally:
            self.ConClose(conn, cur)

3、return返回结果 class 类型

[<__main__.tModel object at 0x0000024CABFEB5F8>,
<__main__.tModel object at 0x0000024CABFEB780>,
<__main__.tModel object at 0x0000024CABFEB7B8>,
<__main__.tModel object at 0x0000024CABFEB7F0>,
<__main__.tModel object at 0x0000024CABFEB828>,
<__main__.tModel object at 0x0000024CABFEB860>]

 

标签:cur,模型,python,数据库,self,price,id,data,class
来源: https://www.cnblogs.com/clearheart/p/13280100.html

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有