Je suppose que sys.inspect
interprète un ObjectId
comme un objet contenant un id
propriété. C'est ce que vous voyez dans le dump.
MongoDB traite l'ObjectId comme une valeur binaire de 12 octets, et non comme un objet. Donc MongoDB ne connaît aucun id
propriété. C'est pourquoi la requête suivante ne donne aucun résultat :
findOne({_id: {id: item._id.id}}, collection)
Ce qui suit fonctionne, car il traite simplement les deux valeurs comme des valeurs binaires :
findOne({_id: item._id}, collection)