मेरे पास दस्तावेज़ों के संग्रह के निर्माण के लिए एक सीधा उपकरण है और फिर उन्हें स्वचालित रूप से एक्सप्रेसजेएस के शीर्ष पर लिखे गए ईपीयूबी या लाटेक्स प्रतिपादन के लिए प्रारूपित करना है। मैं कॉफ़ीस्क्रिप्ट का उपयोग कर रहा हूं, अगर यह मायने रखता है (मुझे शक है)।मोंगोस: ऑब्जेक्टआईडी तुलना असंगत रूप से असफल हो जाती है
नेवला का उपयोग करना, मैं निम्नलिखित है: "इन:
DocumentSchema = new Schema
title: String
Offrefs = new Schema
ref: { type: ObjectId }
isa: String
BinderSchema = new Schema
title: String
contains: [Offrefs]
Offrefs यह क्या दर्शाता है क्योंकि क्योंकि मैं अन्य बाइंडरों में कुछ बाइंडरों को रोकने के लिए, तार्किक संकलन तैयार करने के लिए सक्षम होना चाहते हैं निर्दिष्ट नहीं करता प्रिंटर के लिए हैं, "" ये एपब के लिए हैं, "" ये केवल वेब हैं, "आदि। (मैंने सभी विविध सामानों को बाहर कर दिया है।)
दुर्भाग्य से, मैंने प्रश्नों में भाग लिया है, जहां से पुनर्प्राप्त किया गया है ऑब्जेक्ट्स
(story._id == offref.ref) -> True
और दोनों वास्तव में वही दिखते हैं। लेकिन:
(binder._id == offref.ref) -> False
(String(binder._id) == String(offref.ref)) -> True
और पिछले दो में दो संदर्भों का एक दृश्य तुलना, वे एक ही आईडी नंबर रहे हैं, लेकिन ObjectId
वस्तुओं को सही ढंग से तुलना नहीं है।
मैं लगातार स्ट्रिंग रूपांतरण करना नहीं चाहता, जो एक मजबूत संभावना है जब मैं इन जटिल वस्तुओं को डेटा के पेड़ों में परिवर्तित कर रहा हूं। वृक्ष संबंध किसी भी डीबी में एक भालू हैं; मोंगो डीबी में उन्हें मुश्किल नहीं होना चाहिए।
आप MongoDB में ऑब्जेक्टआईडी तुलना कैसे करते हैं?
हाँ, अनियंत्रित विशेषताएं। – peterjwest
तो यह mongoose.Schema.Types.ObjectID जैसा नहीं है? उनके दस्तावेज़ का तात्पर्य है कि इसमें केवल 'ऑटो' विधि है: http://mongoosejs.com/docs/api.html#schema-objectid-js – peterjwest
@ पीटरजवेस्ट राइट, 'mongoose.Schema.Types.ObjectId' वास्तव में है स्कीमा परिभाषाओं में फ़ील्ड-प्रकार मेटा-डेटा के रूप में उपयोग के लिए। – JohnnyHK