2012-09-24 22 views
61

में मल्टीफ़िल्ड इंडेक्स बनाना मोंगोसेज में बहु-क्षेत्रीय इंडेक्स बनाने के तरीके पर, मुझे कोई फायदा नहीं हुआ, प्रलेखन खोजने का प्रयास कर रहा हूं। विशेष रूप से मेरे पास दो फ़ील्ड हैं जिन्हें अनुक्रमित और अद्वितीय होना चाहिए। एक उदाहरण mongoose स्कीमा क्या है जो दो क्षेत्रों को एक साथ अनुक्रमणित करता है?मोंगोस/मोंगो डीबी

उत्तर

126

आप विधि को Schema ऑब्जेक्ट पर कॉल करने के लिए here दिखाते हैं। आपके मामले के लिए यह कुछ ऐसा होगा:

mySchema.index({field1: 1, field2: 1}, {unique: true}); 
+0

कि चाल किया था। बहुत धन्यवाद! – Dan

+2

इसे मोंगोडब में कॉम्पाउंट इंडेक्स कहा जाता है। इसलिए यह फ़ील्ड 1 और फ़ील्ड 1 + फ़ील्ड 2 के रूप में इंडेक्स बनाता है। तो यह फ़ील्ड 1 के अनुसार पहली अनुक्रमणिका है और फिर क्षेत्र 2 के अंदर फ़ील्ड 2 –

+0

फ़ील्ड 1 के बाद 1 का अर्थ क्या है: और field2:? –

7

कंपाउंड इंडेक्स बनाते समय स्कीमा स्तर पर परिभाषित इंडेक्स आवश्यक है।

animalSchema.index({ name: 1, type: -1 }); 

संदर्भ: http://mongoosejs.com/docs/guide.html#indexes

+4

1 और -1 का अर्थ क्या है? मैं इसे उस दस्तावेज़ में नहीं ढूंढ पाया जिसे आपने संदर्भित किया था। धन्यवाद। – DFB

+2

मुझे इस पृष्ठ पर उत्तर मिला: http://docs.mongodb.org/manual/core/indexes-introduction/ धन्यवाद! – DFB