将sqlalchemy 查询结果转化成json格式

Posted 他人能者亦能,他人不能者吾亦能

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将sqlalchemy 查询结果转化成json格式相关的知识,希望对你有一定的参考价值。

models.py

class CompanyGoodsModel(Base):
    id=Column(Integer, primary_key=True)
    company_id = Column(Integer)
    。。。
    #我们在model中定义一个to_json方法,来获取模型的数据
    def to_json(self):
        dict = self.__dict__
        if "_sa_instance_state" in dict:
            del dict["_sa_instance_state"]
            return dict
    def get_info_by_id(company_id, category_id):
        if company_id:
            data=CompanyGoodsModel.query.filter(CompanyGoodsModel.company_id == company_id).all()
            return data
        elif category_id:
            data = CompanyGoodsModel.query.filter(CompanyGoodsModel.category_id == category_id).all()
            return data

 

然后在视图层中

@api.route(/company_goods, methods=[GET, POST])
def company_goods():
    if request.method == GET:
        company_id = request.args.get(company_id, ‘‘)
        category_id = request.args.get(category_id, ‘‘)
        data=CompanyGoodsModel.get_info_by_id(company_id, category_id)
        result=[]
        for d in data:
            d.goods_info=eval(d[goods_info])
            result.append(d.to_json())
        if not result:
            return json_response(0001, {}, 数据获取失败 )
        return json_response(0000, result, 数据获取成功)

 

 

以上是关于将sqlalchemy 查询结果转化成json格式的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Flask SQLAlchemy amp;Peewee 的查询结果转换成 json

如何将 SqlAlchemy 结果序列化为 JSON?

用asp怎么将查询结果转化为json

如何将 Sqlalchemy ORM 查询结果转换为包含关系的单个联接表?

Django objects的查询结果转化为json的三种方式

如何将Map转化为json字符串