MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

NodeJS/नेवला/MongoDB - खींचो (सरणी से) काम नहीं कर रहा

मैंने पाया कि $pull कमांड मेरे लिए तब तक काम नहीं करता जब तक कि मैं तर्क सूची में कॉलबैक शामिल नहीं करता।

मेरी स्थिति में, यह प्रारूप काम नहीं किया:

UserAlerts.findOneAndUpdate({userId: userId}, {$pull: {alerts: {_id: alertId}}});

लेकिन इस प्रारूप ने किया:

UserAlerts.findOneAndUpdate({userId: userId}, {$pull: {alerts: {_id: alertId}}}, function(err, data){
  console.log(err, data);
});

प्रलेखन के अनुसार, ऐसा लगता है कि दोनों को काम करना चाहिए, लेकिन नहीं। इसका कारण यह है कि पहले तरीके से आपको लौटाई गई वस्तु पर .exec () कॉल करने की आवश्यकता होती है, जबकि कॉलबैक संस्करण स्वचालित रूप से निष्पादन () को कॉल करता है। मेरे लिए भी कुछ भ्रम पैदा किया।

तो आपको कुछ ऐसा करने की ज़रूरत है:

UserAlerts.findOneAndUpdate({userId: userId}, {$pull: {alerts: {_id: alertId}}}).exec();



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेवला:रेगेक्स के साथ पूरा नाम पूछें

  2. सत्र का समर्थन करने वाले MongoDB क्लस्टर को कैसे कॉन्फ़िगर करें?

  3. MongoDB एग्रीगेट फ्रेमवर्क - ग्रुप बाय ईयर

  4. जावा मोंगोडब संख्या लंबी क्वेरी

  5. Mongodb $ जहां नोडज के साथ क्वेरी हमेशा सच होती है