Как обновить несколько объектов в коллекции MongoDb при одном запросе 'PUT'?
Есть коллекция состоящая из фотографий в которых присутствует поле 'order'. На фронте изменяю последовательность вывода с помощью изменения поля 'order'. Дальше делаю запрос на бекенд(express.js, mongoDb) для изменения в БД с помощью запроса PUT. В body передаю массив фоток. Какой метод применить к модели Photo для обновления свойства 'order' всех нужных объектов?
// Schema
const photoSchema = new mongoose.Schema({
type: {
type: String,
required: true,
},
image: {
type: String,
required: true,
},
createdAt: {
type: Date,
default: Date.now,
},
order: {
type: Number,
},
});
module.exports = mongoose.model('photo', photoSchema);
// Controllers
const changeOrder = (req, res, next) => {
const { newArr } = req.body;
//так не работает
newArr.forEach((item) => {
Photo.updateOne({ _id: item._id }, { order: item.order }, {
new: true, // обработчик then получит на вход обновлённую запись
runValidators: true, // данные будут валидированы перед изменением
})
})
}