आपके वेबपेज आईडी स्ट्रिंग हैं, जबकि आप जिन _ids के साथ खोज रहे हैं वे ObjectIds हैं। आपकी खोज किसी भी परिणाम से मेल नहीं खाती क्योंकि परिणाम तालिका में ऐसे कोई दस्तावेज़ नहीं हैं जिनमें "webpageid" तत्व के लिए ObjectId मान हों।
जैसा कि मैं देख रहा हूं, दो समाधान हैं।
- आप
webpageid
के लिए स्ट्रिंग्स के बजाय ObjectIds स्टोर कर सकते हैंresults
में तत्व संग्रह। इसका कार्यान्वयन निश्चित रूप से इस बात पर आधारित है कि वे दस्तावेज़ संग्रह में कैसे आते हैं। -
... for(var i = 0; i < docs.length; i++) { var docId = docs[i]._id.toString(); // create a string db.get('results').findOne({'webpageid':docId}, function(err, doc) ...
यदि आप दूसरे विकल्प के साथ जाते हैं, तो आपको यह देखने की आवश्यकता हो सकती है कि webpageid
की शुरुआत में एक प्रमुख उद्धरण क्यों है results
. में दूसरे दस्तावेज़ के लिए मान संग्रह।
"webpageid" : "\"54960a916ecb16dc3c4880e8"
अंत में, मुझे आपकी आवश्यकताओं के बारे में ज्यादा जानकारी नहीं है, लेकिन आप समाधान के रूप में MongoDB पर पुनर्विचार करना चाह सकते हैं। ऐसा प्रतीत होता है कि आप जॉइन की तरह कुछ बना रहे हैं जो कुछ ऐसा है जो मोंगोडीबी को बहुत अच्छी तरह से संभालने के लिए डिज़ाइन नहीं किया गया है।