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)