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

¿Cómo puedo guardar varios documentos al mismo tiempo en Mongoose/Node.js?

Mongoose ahora admite pasar varias estructuras de documentos a Model.create. Para citar su ejemplo de API, admite que se le pase una matriz o una lista de objetos varargs con una devolución de llamada al final:

Candy.create({ type: 'jelly bean' }, { type: 'snickers' }, function (err, jellybean, snickers) {
    if (err) // ...
});

O

var array = [{ type: 'jelly bean' }, { type: 'snickers' }];
Candy.create(array, function (err, jellybean, snickers) {
    if (err) // ...
});

Editar: Como muchos han notado, esto no realiza una verdadera inserción masiva, simplemente oculta la complejidad de llamar a save varias veces a ti mismo. Hay respuestas y comentarios a continuación que explican cómo usar el controlador Mongo real para lograr una inserción masiva en aras del rendimiento.