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

नेवला 'स्थिर' तरीके बनाम 'उदाहरण' तरीके

statics मॉडल पर परिभाषित विधियां हैं। methods दस्तावेज़ (उदाहरण) पर परिभाषित हैं।

आप एक स्थिर . का उपयोग कर सकते हैं विधि जैसे Animal.findByName :

const fido = await Animal.findByName('fido');
// fido => { name: 'fido', type: 'dog' }

और आप एक उदाहरण विधि . का उपयोग कर सकते हैं जैसे fido.findSimilarTypes :

const dogs = await fido.findSimilarTypes();
// dogs => [ {name:'fido',type:'dog} , {name:'sheeba',type:'dog'} ]

लेकिन आप ऐसा नहीं करेंगे Animals.findSimilarTypes() क्योंकि पशु एक मॉडल है, इसका कोई "प्रकार" नहीं है। findSimilarTypes एक this.type . की आवश्यकता है जो कि एनिमल्स मॉडल में मौजूद नहीं होगा, केवल एक दस्तावेज़ इंस्टेंस में वह गुण होगा, जैसा कि मॉडल में परिभाषित किया गया है।

इसी तरह आप fido.findByName नहीं करेंगे क्योंकि findByName सभी दस्तावेज़ों और fido . के माध्यम से खोजने की आवश्यकता होगी बस a . है दस्तावेज़।

खैर, तकनीकी रूप से आप कर सकते हैं , क्योंकि उदाहरण के पास संग्रह तक पहुंच है (this.constructor या this.model('Animal') ) लेकिन इसका कोई मतलब नहीं होगा (कम से कम इस मामले में) एक उदाहरण विधि है जो उदाहरण से किसी भी गुण का उपयोग नहीं करती है। (इसे इंगित करने के लिए @AaronDufour को धन्यवाद)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. JSON फ़ाइल का Mongoimport

  2. क्या आपको MongoDB जर्नलिंग सक्षम करनी चाहिए?

  3. MongoDB एटलस की शीर्ष 10 विशेषताएं

  4. mongorestore विफल:कोई पहुंच योग्य सर्वर नहीं

  5. MongoDb कोड 100 के साथ बंद हो जाता है