mongodb - update - Cómo actualizar si existe de lo contrario inserte un nuevo documento?
mongodb update multi example (3)
[db.collection.replaceOne(filter, replacement, options)]
con upsert:true
Por ejemplo, desde here :
try { db.restaurant.replaceOne(
{ "name" : "Pizza Rat''s Pizzaria" },
{ "_id": 4, "name" : "Pizza Rat''s Pizzaria", "Borough" : "Manhattan", "violations" : 8 },
{ upsert: true }
);
}
catch (e){ print(e); }
Cómo actualizar si existe, de lo contrario inserte un documento nuevo en javascript / node.js? Estoy obteniendo como parámetro al diccionario de función, si el diccionario contiene _id debe actualizar, de lo contrario inserte en el servidor remoto (tengo conexión con el servidor remoto a través de mangosta y tengo el esquema de Persona que deseo insertar / actualizar).
collection.update
con upsert:true
. Ver también here .
En Mongoose, usaría Person.update
según la documentación . Para crear un documento, si no existe, debe pasar { upsert : true }
en el hash de opciones, ya que el valor predeterminado es false
.
es decir
Person.update( { name : ''Ted'' }, { name : ''Ted'', age : 50 }, { upsert : true }, callback );