2015-08-02 2 views
1

Так что в основном у меня есть модель, которая, когда я вызываю удаление на ней, возвращает объект, к которому я не могу получить доступ.Mongoose Model.remove callback не дает мне количество элементов, удаленных?

Прямо сейчас, когда я вызываю remove, я хочу получить доступ к количеству удаленных элементов и не могу.

Это то, что возвращается:

{ 
'ok': 1 
'n': 0 
} 

это не то, что я хочу. Я понял, что n - это счет, однако при попытке получить к нему доступ через count.n я не могу.

Вот мой код удалить

Shift.remove({ 
     _id: req.body.id 
    }, function(err, count){ 
     if(err){ 
      console.log(err); 
      res.json({success: false, message:'problem with id'}); 
     }else if(!err && count === 0){ 
      res.json({success: false, message:count}); 
     }else if(!err && count === 1){ 
      res.json({success: true, message:count}); 
     } 
    }); 

Я попытался

Shift.remove({ 
     _id: req.body.id 
    }, function(err, count){ 
     if(err){ 
      console.log(err); 
      res.json({success: false, message:'problem with id'}); 
     }else if(!err && count.n === 0){ 
      res.json({success: false, message:count}); 
     }else if(!err && count.n === 1){ 
      res.json({success: true, message:count}); 
     } 
    }); 

и я попытался

Shift.remove({ 
     _id: req.body.id 
    }, function(err, count){ 
     if(err){ 
      console.log(err); 
      res.json({success: false, message:'problem with id'}); 
     }else if(!err){ 
      res.json({success: true, message:count.n}); 
     } 
    }); 

Даже в этом последнем примере я не могу видеть количество !! Что здесь происходит?

ответ

2

Хорошо, я понял. Надеюсь, это поможет кому-то там. Чтобы получить доступ к колу мне нужно использовать

count.result.n 

не

count.n 

Спасибо в любом случае!

+0

См. [Это] (http://mongodb.github.io/node-mongodb-native/2.0/api/Collection.html#~WriteOpResult). – robertklep

+0

О, черт возьми, спасибо, что переполнение стека снова –

Смежные вопросы