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 にプライベートなものをインポートする必要があるため、これは見栄えがよくありません。
他のオプションはありますか?