Мне интересно, делаю ли я что-то не так, как я использую мангуста в экспрессе.Мой код просто не выглядит правильно.Для добавления чего-либо в документ требуется 2 запроса mongoose, и мне интересно, можно ли это упростить?Он ищет документ уведомления пользователя в коллекции, удаляет что-то из ожидающего массива и сохраняет его.Я хотел бы добавить еще 2 запроса, чтобы найти принятый пользователями документ запроса и добавить в него старый ожидающий документ, но в общей сложности 4 запроса и цикл в одном запросе ... это просто звучит неправильно ...
var acceptRequest = function(userId, requesterId, callback){
NotificationsReference.findOne({ id: userId}, function(err, result){
if(err || result === null){
callback("Could not accept notification. Stack: " + err);
}
else{
var deletedRefId = 'unchanged';
for(i = 0; i < result.pending.length; i++){
if( result.pending[i].refId = requesterId){
//Removing searched element of the array
deletedRefId = result.pending.splice(i, 1);
result.save(function (err) {
if (err) {
callback("Error in saving request(2). Stack Trace: " + err);
}
else{
callback("Success");
}
}
}
}
});
}