flask-sqlalchemy 中查询出的数据转换为 字典

        近期,将以前写的代码修改了一次,由于以前是用SQL语句查询数据,改为model操作后,发现查询出的结果不是字典格式,故查找了许久的资料,终于找到了解决办法.....

def model_to_dict(result):
    from collections import Iterable
    # 转换完成后,删除  '_sa_instance_state' 特殊属性
    try:
        if isinstance(result, Iterable):
            tmp = [dict(zip(res.__dict__.keys(), res.__dict__.values())) for res in result]
            for t in tmp:
                t.pop('_sa_instance_state')
        else:
            tmp = dict(zip(result.__dict__.keys(), result.__dict__.values()))
            tmp.pop('_sa_instance_state')
        return tmp
    except BaseException as e:
        print(e.args)
        raise TypeError('Type error of parameter')

 

由于查询出的数据自带 "_sa_instance_state"属性,故多了一步删除操作;

以上信息,希望能给大家带来一点点帮助,感谢。

    参考链接:https://segmentfault.com/a/1190000002768198

 

你可能感兴趣的:(Web开发)