无名商城论坛

搜索
查看: 294|回复: 0

[其他技术] 【HC】flask-sqlalchemy返回对象 转化

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32464
发表于 2022-5-8 18:36:37 | 显示全部楼层 |阅读模式

———本期带来flask-sqlalchemy返回对象 转化——
????

返回结果 [<apps.models.test.index.User object at 0x000001D2EDD91208>, <apps.models.test.index.User object at 0x000001D2EDA666D8>, <apps.models.test.index.User object at 0x000001D2EDD62358>] 返回数据类型 <class 'list'> <apps.models.test.index.User object at 0x000001D2EDA666D8> <class 'apps.models.test.index.User'> 处理结果 [{"creact_time": null, "id": 1, "name": "root", "password": "123456", "query": null, "query_class": null, "status": 1}, {"creact_time": null, "id": 2, "name": "An", "password": "123456", "query": null, "query_class": null, "status": 1}, {"creact_time": "2019-10-31 11:12:08.041", "id": 4, "name": "admin", "password": "123456", "query": null, "query_class": null, "status": 1}] 处理类型 <class 'str'> 再次处理 [{'creact_time': None, 'id': 1, 'name': 'root', 'password': '123456', 'query': None, 'query_class': None, 'status': 1}, {'creact_time': None, 'id': 2, 'name': 'An', 'password': '123456', 'query': None, 'query_class': None, 'status': 1}, {'creact_time': '2019-10-31 11:12:08.041', 'id': 4, 'name': 'admin', 'password': '123456', 'query': None, 'query_class': None, 'status': 1}] 再次处理类型 <class 'list'> An工具类from sqlalchemy.ext.declarative import DeclarativeMetaimport jsonclass AlchemyEncoder(json.JSONEncoder):    def default(self, obj):        if isinstance(obj.__class__, DeclarativeMeta):            # an SQLAlchemy class            fields = {}            for field in [x for x in dir(obj) if not x.startswith('_') and x != 'metadata']:                data = obj.__getattribute__(field)                try:                    json.dumps(data) # this will fail on non-encodable values, like other classes                    fields[field] = data                except TypeError:                    fields[field] = None            # a json-encodable dict            return fields        return json.JSONEncoder.default(self, obj)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表