Не повторяется при использовании find ObjectId - PullRequest
0 голосов
/ 17 марта 2019

Я пытаюсь найти определенный документ в моем mongodb, затем обновить его значение int с помощью запроса find, я использую $ in, потому что я использовал массив для поиска каждого элемента внутри него, но когда я использовал ObjectId это дает мне ошибку:

bloodinventoryDocs is not iterable

Вот что я сделал

  var mongoose = require('mongoose');
  var id = mongoose.Types.ObjectId('5c014c999cc48c3b0057988b');
  var newValue = 1;
  var newBloodgroup = "A_positive"; 
  var newGetbloodcomponent = "Whole Blood"; 


        Bloodinventory.find({ blood_component : { $in : newGetbloodcomponent} , blood_group: { $in :newBloodgroup},chapter: { $in :id}}, function(err, bloodinventoryDocs) {

            for(let bloodinventory of bloodinventoryDocs) {
                bloodinventory.num_stock = bloodinventory.num_stock + newValue ;                        
                bloodinventory.save(function(err) {
                    if (err) {
                        console.log(err); 
                    } else {
                        console.log('success'); 
                    }
                });
            }  
        });
...