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

क्या है Mongoose त्रुटि ObjectId पर कास्ट करें मान XXX के लिए पथ _id पर विफल रहा?

नेवला का findById विधि id को कास्ट करती है मॉडल के प्रकार के लिए पैरामीटर _id फ़ील्ड ताकि यह मेल खाने वाले दस्तावेज़ के लिए ठीक से क्वेरी कर सके। यह एक ऑब्जेक्ट आईडी है लेकिन "foo" मान्य ऑब्जेक्ट आईडी नहीं है इसलिए कास्ट विफल हो जाता है।

41224d776a326fb40f000001 के साथ ऐसा नहीं होता है क्योंकि वह स्ट्रिंग एक मान्य ऑब्जेक्ट आईडी है।

इसका समाधान करने का एक तरीका यह है कि आप अपने findById . से पहले एक चेक जोड़ दें यह देखने के लिए कॉल करें कि क्या id एक वैध ऑब्जेक्ट आईडी है या ऐसा नहीं है:

if (id.match(/^[0-9a-fA-F]{24}$/)) {
  // Yes, it's a valid ObjectId, proceed with `findById` call.
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. लिनक्स/ओएस एक्स पर मोंगोड सेवा शुरू करने का सही तरीका क्या है?

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

  3. सरणी की लंबाई से मानगो क्रम

  4. MongoDB नेवला पदावनति चेतावनी

  5. एक प्रकाशन दूसरे प्रकाशन से नेस्टेड फ़ील्ड छुपा रहा है