Обновление нескольких документов по установленному идентификатору. Мангуста
Интересно, имеет ли mongoose некоторый метод обновления нескольких документов по набору id. Например:
for (var i = 0, l = ids.length; i < l; i++) {
Element.update({'_id': ids[i]}, {'visibility': visibility} ,function(err, records){
if (err) {
return false;
} else {
return true;
};
});
};
Что я хочу знать, если мангуста может сделать что-то вроде этого:
Element.update({'_id': ids}, {'visibility': visibility}, {multi: true} ,function(err, records){
if (err) {
return false;
}
});
где ids - массив идентификаторов, например ['id1', 'id2', 'id3'] - массив образцов.
Тот же вопрос для поиска.
Ответы
Ответ 1
Скорее всего, да. И он вызывается с помощью оператора $ in в запросе mongodb для обновления.
db.Element.update(
{ _id: { $in: ['id1', 'id2', 'id3'] } },
{ $set: { visibility : yourvisibility } },
{multi: true}
)
Все, что вам нужно, это найти, как реализовать $ in в mongoose.