sql >> Base de Datos >  >> NoSQL >> MongoDB

Inserte elementos en la matriz mongo a través de mangosta

Asumiendo, var friend = { firstName: 'Harry', lastName: 'Potter' };

Tienes dos opciones:

Actualice el modelo en memoria y guárdelo (matriz javascript simple.push):

person.friends.push(friend);
person.save(done);

o

PersonModel.update(
    { _id: person._id }, 
    { $push: { friends: friend } },
    done
);

Siempre trato de elegir la primera opción cuando sea posible, porque respetará más los beneficios que le brinda la mangosta (ganchos, validación, etc.).

Sin embargo, si está haciendo muchas escrituras simultáneas, encontrará condiciones de carrera en las que terminará con errores de versión desagradables que le impedirán reemplazar el modelo completo cada vez y perder el amigo anterior que agregó. Así que acude al primero solo cuando sea absolutamente necesario.