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

नेवला में कई से कई संदर्भ हटा रहा है

आप 'remove' . का उपयोग करने के लिए सही रास्ते पर हैं इसके लिए मिडलवेयर। मिडलवेयर फ़ंक्शन में, this क्या समूह का उदाहरण हटाया जा रहा है और आप अन्य मॉडलों को इसके model . के माध्यम से एक्सेस कर सकते हैं तरीका। तो आप कुछ ऐसा कर सकते हैं:

GroupSchema.pre('remove', function(next){
    this.model('User').update(
        {_id: {$in: this.users}}, 
        {$pull: {groups: this._id}}, 
        {multi: true},
        next
    );
});

या यदि आप उन मामलों का समर्थन करना चाहते हैं जहां users हो सकता है कि आपके समूह इंस्टेंस में फ़ील्ड पूरा न हो जो आप कर सकते थे:

GroupSchema.pre('remove', function(next){
    this.model('User').update(
        {groups: this._id}, 
        {$pull: {groups: this._id}}, 
        {multi: true},
        next
    );
});

लेकिन जैसा कि WiredPrairie नोट करता है, इस विकल्प के लिए आप groups पर एक अनुक्रमणिका चाहते हैं अच्छे प्रदर्शन के लिए।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. उन सभी दस्तावेज़ों को ढूँढ़ें और निकालें जिनकी createDate एक महीने पुरानी है

  2. मोंगोडीबी $strcasecmp

  3. नीला फ़ंक्शन (नोड) मोंगोडब को कॉल करना त्रुटि के बिना समाप्त होता है लेकिन क्वेरी से कुछ भी वापस नहीं आता है

  4. नेवला:ObjectId तुलना असंगत रूप से विफल हो जाती है

  5. महीने के हिसाब से समूह और गिनती