Pymongo / bson: convierte el objeto python.cursor.Cursor en un objeto serializable / JSON

Nuevo en MongoDb y Python ( webapp2 ). Entonces, estaba buscando algunos datos de una base de datos mongodb . Pero no json.dumps usar json.dumps en los datos devueltos. Aquí está mi código:

 exchangedata = db.Stock_Master.find({"Country": "PHILIPPINES"}, {"_id" : 0}) self.response.write(json.dumps(exchangedata)) 

Esto arroja un error:

 TypeError: pymongo.cursor.Cursor object at 0x7fcd51230290 is not JSON serializable 

El tipo de exchangedata es pymongo.cursor.Cursor . ¿Cómo puedo convertirlo en un objeto json?

Related of "Pymongo / bson: convierte el objeto python.cursor.Cursor en un objeto serializable / JSON"

Utilice volcados de bson.json_util :

 >>> c = pymongo.MongoClient() >>> c.test.test.count() 5 >>> from bson.json_util import dumps >>> dumps(c.test.test.find()) '[{"_id": {"$oid": "555cb3a7fa5bd85b81d5a624"}}, {"_id": {"$oid": "555cb3a7fa5bd85b81d5a625"}}, {"_id": {"$oid": "555cb3a7fa5bd85b81d5a626"}}, {"_id": {"$oid": "555cb3a7fa5bd85b81d5a627"}}, {"_id": {"$oid": "555cb3a7fa5bd85b81d5a628"}}]' 

Solución simple

  // Use dumps from bson.json_util: from bson.json_util import dumps @app.route("/") def home_page(): booking = dumps(mongo.db.bookings.find()) print booking return booking