पर टेक्स्ट इंडेक्स का उपयोग करते समय त्रुटि मैं Mongodb पर टेक्स्ट इंडेक्स के साथ खेलने की कोशिश कर रहा हूं।Mongodb
मैं पहले से ही एक संग्रह पर एक पाठ सूचकांक का प्रयोग किया:
db.ensureIndex({field1 : "text"})
और यह काम करता है।
लेकिन मैं एक और संग्रह पर पुन: प्रयास और मैं निम्नलिखित संदेश मिलता है:
db.movies.ensureIndex({genres: "text"})
{
"createdCollectionAutomatically" : false,
"numIndexesBefore" : 1,
"ok" : 0,
"errmsg" : "found language override field in document with non-string type",
"code" : 17261
}
संग्रह "फिल्में" एक "शैलियों" क्षेत्र है जो स्ट्रिंग की एक सरणी है। उदाहरण के लिए:
> db.movies.findOne()
{
"_id" : ObjectId("51c460fdc30a209dd9621dc4"),
"genres" : [
"Crime",
"Drama"
]
...
}
यह फ़ील्ड सभी दस्तावेजों पर मौजूद है।
मुझे यह त्रुटि नहीं समझती। कोई उपाय ?
आप को जोड़ सकते हैं क्या 'db.movies.getIndexes()' शो: यकीन है कि 'भाषा' बनाओ एक अशक्त नहीं स्ट्रिंग केवल इन मूल्यों (Text Search Languages देखें) शामिल है? पूर्ण मूवी दस्तावेज़ भी दिखाएं। ऐसा लगता है कि 'फिल्में' दस्तावेज़ में एक सरणी प्रकार मान के साथ 'भाषा' नाम का एक फ़ील्ड है। – BatScream