Tengo este campo en mi colección:
uniqueId: 123 inTarefa: true exclude: "ab,cd," orderId: 987y estoy tratando de actualizar todos los valores usando un "FindOneAndUpdate" como este:
collection.findOneAndUpdate({ 'uniqueId': 123 }, {{ "$set":{ "inTarefa":false, "orderId":0, "exclude":{"$concat":["$exclude","servico"]} }}})inTarefa y orderId se cambiaron con éxito, pero la "exclusión" se cambió a un objeto como este:
exclude:{$concat:[0: "$exclude", 1: "servico"]}Sí, esto es exactamente lo que se supone que debe hacer SI la palabra clave "$ concat" no fuera un comando para mongodb. ¿Qué estoy haciendo mal?
Mongodb versión: 4.3.1
$concat es un operador de agregación, debe usar la forma de actualización canalizada. Prueba esto:
collection.findOneAndUpdate({ 'uniqueId': 123 }, [ {"$set":{ "inTarefa":false, "orderId":0, "exclude":{"$concat":["$exclude","servico"]} }} ])