MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Objet MongoDB sérialisé en tant que JSON

Dans les nouvelles versions de simplejson (et le json module en Python 2.7) vous implémentez le default méthode dans vos sous-classes :

from json import JSONEncoder
from pymongo.objectid import ObjectId

class MongoEncoder(JSONEncoder):
    def default(self, obj, **kwargs):
        if isinstance(obj, ObjectId):
            return str(obj)
        else:            
            return JSONEncoder.default(obj, **kwargs)

Vous pouvez ensuite utiliser l'encodeur avec MongoEncoder().encode(obj) ou json.dumps(obj, cls=MongoEncoder) .