Estoy intentando seleccionar un documento por identificación
He intentado:
collection.update({ "_id": { "$oid": + theidID } }
collection.update({ "_id": theidID }
collection.update({ "_id.$oid": theidID }}
También probé:
collection.update({ _id: new ObjectID(theidID ) }
Esto me da un error 500 ...
var mongo = require('mongodb')
var BSON = mongo.BSONPure;
var o_id = new BSON.ObjectID(theidID );
collection.update({ _id: o_id }
Ninguno de estos funciona. ¿Cómo seleccionar por _id?
javascript
mongodb
node.js
marca
fuente
fuente
collection.find({"_id": ObjectId(theidID)})
Deberia trabajar.Respuestas:
fuente
native_parser:false
, consulte la respuesta de Raphael a continuaciónObjectID()
enrequire('mongodb')
y no enrequire('mongodb').MongoClient
mongoClient.ObjectID is not a constructor
error.Este es el enfoque que funcionó para mí.
fuente
ahora puedes usar esto:
Puedes ver la documentación aquí
fuente
Con
native_parser:false
:Con
native_parser:true
:fuente
Acabo de usar este código en la aplicación Node.js en el archivo del controlador, y funciona:
no olvide instalar "mongodb" antes, y si está utilizando cifrado de sus contraseñas con bcrypt con "presave", asegúrese de no cifrar la contraseña después de cada modificación del registro en DB.
fuente
fuente
La respuesta depende del tipo de variable que está pasando como id. Saqué una identificación de objeto haciendo una consulta y almacenando mi account_id como el atributo ._id. Con este método, simplemente realiza una consulta utilizando el identificador de mongo.
});
fuente
Esto es lo que funcionó para mí. Usando mongoDB
const mongoDB = require('mongodb')
Luego, en la parte inferior donde estoy haciendo mi llamada urgente.
fuente
Si usa Mongosee, puede simplificar la función
FindById:
este reemplazo en mongodb:
"_id" : ObjectId("xyadsdd434434343"),
https://mongoosejs.com/docs/api.html#model_Model.findById
fuente