La documentación de la API se encuentra aquí , sin embargo, hay dos entradas:
y
ambos de los cuales no parecen usar el formulario que estoy usando, ya que estoy usando explícitamente el formulario a continuación, mientras que los documentos lo usan como un marcador de posición para cosas como Character o product .
const Model = mongoose.model(name, schema); Model.deleteOne()Mi eliminación funciona bien, pero quiero leer la documentación real para mi función.
Si no especifico nada entonces no pasa nada. De hecho, no sucede mucho útil... UnhandledPromiseRejectionWarning: MongoServerError: BSON field 'delete.deletes.q' is missing but a required field.
Entonces debemos usar el filtro param y proporcionar un documento para filtrar y eliminar:
(method) Collection<Document>.deleteOne(filter: Filter<Document>): Promise<DeleteResult> (+3 overloads) Delete a document from a collection @param filter — The filter used to select the document to remove @param options — Optional settings for the command @param callback — An optional callback, a Promise will be returned if none Entonces, así como la definición dice Collection<Document>.deleteOne({_id: 12345})
O
delete = (x) => { if(x) db.collection.deleteOne({_id: x}); return 'you must provide a value to delete for field _id'; }¿Está seguro de que su método elimina uno o más documentos sin un filtro?