sql >> Databáze >  >> NoSQL >> MongoDB

Nelze deserializovat PyMongo ObjectId z JSON

Myslím, že váš řetězec ve skutečnosti vypadá jako reprezentace pythonu...

s = '{"_id": {"$oid": "4edebd262ae5e93b41000000"}}'
u = json.loads(s, object_hook=json_util.object_hook)

print u  # Result:  {u'_id': ObjectId('4edebd262ae5e93b41000000')}

s = json.dumps(u, default=json_util.default)

print s  # Result:  {"_id": {"$oid": "4edebd262ae5e93b41000000"}}

Zdá se, že funkce bson.json_util.object_hook nemá žádný typ zpracování, protože ve skutečné reprezentaci řetězce json existuje ObjectId().



  1. Redis se místo REDIS_URL pokouší připojit k localhost na Heroku

  2. MongoDB $podlaží

  3. Nelze deserializovat PyMongo ObjectId z JSON

  4. Odebrat pole nalezené v libovolném poli mongodb