Estoy tratando de escribir una función de actualización para mis documentos de mongoDB, así que estoy buscando los filtros basados en documentos, quiero pasar propiedades de un objeto de datos al documento, pero parece que Object.assign no funciona en este caso
Mi objetivo es poder actualizar propiedades desconocidas, para poder tener una función genérica.
async updateData(tableName, filters, data) { let table = getModel(tableName) console.log("data = ", data) console.log("document before assign = ", document) Object.assign(document, data) console.log("document after assign = ", document) //document is not updated // document.save() }Los datos y documentos se ven así:
data = {"username": "test"} document before assign = { _id: new ObjectId("61e05ca91ce111c6db4ed265"), username: 'lolilol', wallet: '0xD1fB16A13b22835822a491B244404f1' } document after assign = { _id: new ObjectId("61e05ca91ce111c6db4ed265"), username: 'lolilol', wallet: '0xD1fB16A13b22835822a491B244404f1' }aquí hay un jsFiddle donde traté de ver cómo funciona Object.assign: https://jsfiddle.net/tb89nx5p/3/
¿Es porque estoy asignando un objeto a un documento? ¿Cómo puedo lograr eso de otra manera? Gracias