我用 . 序列化 SQLAlchemy 映射的对象json.dumps
。而且我希望我的对象的关联代理属性也能正确序列化。默认情况下它们没有正确序列化,所以我必须编写一个特定的 JSON 编码器:
from sqlalchemy.ext.associationproxy import _AssociationList
class MyEncoder(JSONEncoder):
def default(self, obj):
if isinstance(obj, _AssociationList):
return list(obj)
return JSONEncoder.default(self, obj)
这看起来不太好,因为我需要导入_AssociationList
SQLAlchemy 私有的。
还有其他选择吗?