标签 sqlalchemy 下的文章

web项目中,操作数据库通常会引入ORM,也经常遇到把数据库中查到数据转化成json格式的返回给前端,Django 中自带的ORM,自带函数可以把ORM的实例转化成python的dict 就可以转化成json了。

那如果是flask web 项目, 采用的flask-sqlalchemy ORM如何方便的把返回的实例转化成dict呢?

我的一点小经验:

# 假设model类是 ExamineStat
stat_data = ExamineStat.query.all()
keys = ExamineStat.__table__.columns.keys()
data = [stat_data.getattr(stat_data, key) for key in keys]

stat_data 是一个model实例,而data是一个list

import json 
json.dumps(data)  # 轻松转成json

这里主要利用了model的__table__.columns.keys()可以获取对应数据库中数据表的所有字段的key