tengo una función de controlador como:
User.updateOne( { _id: "6252d87e010b3f94adcf4e41" }, { $pull: { newCart: { "post._id": "6249e216c1e3b6ae2d4aa273", }, }, }, {new:true} ).then((res) => console.log(res, user));
La respuesta es así:
{ acknowledged: true, modifiedCount: 1, upsertedId: null, upsertedCount: 0, matchedCount: 1 }
Muestra el Count modificado a 1 pero nunca cambia en mi colección de base de datos en tiempo real.
Mi colección se ve así: Imagen de mi colección db
La consulta es correcta, tal vez intente agregar exec
User.updateOne( { _id: "6252d87e010b3f94adcf4e41" }, { $pull: { newCart: { "post._id": "6249e216c1e3b6ae2d4aa273", }, }, }, { new: true } ) .exec() .then((res) => console.log(res, user));
Espero que esto resuelva el problema.
Tu consulta está completamente bien. desconecte su base de datos e intente conectarse de nuevo. después de reiniciar tal vez esto funcione