2012-10-14 8 views
21

मैं पिमोंगो का उपयोग कर रहा हूं और एक फ़ील्ड के लिए अलग-अलग मान रखना चाहता हूं जैसे कि मैं अन्य क्वेरी पैरामीटर भी पास कर सकता हूं। उदाहरण के लिए, मेरे पास प्रविष्टियां हैं:pymongo- मैं अन्य क्वेरी पैरामीटर के साथ फ़ील्ड के लिए अलग-अलग मान कैसे रख सकता हूं

{ 
    id = "my_id1" 
    tags: [tag1, tag2, tag3], 
    category: "movie", 
} 
{ 
    id = "my_id2" 
    tags: [tag3, tag6, tag9], 
    category: "tv", 
} 
{ 
    id = "my_id3" 
    tags: [tag2, tag6, tag8], 
    category: "movie", 
} 

इसलिए मैं मूवी श्रेणी के तहत सभी विशिष्ट टैग रखना चाहता हूं। क्या कोई भी कृपया गाइड कर सकता है कि मैं इसे पिमोंगो का उपयोग करके कैसे प्राप्त कर सकता हूं। मोंगो जावास्क्रिप्ट खोल में, मैंने db.mycoll.distinct ('टैग', {श्रेणी: "मूवी"} जारी किया) और यह ठीक काम करता है। लेकिन जब मैं pymongo में ऐसा करता हूं तो यह त्रुटि उठाता है। मुझे लगता है कि यह pymongo में समर्थित नहीं है। कोई विचार हालांकि यह कार्य कैसे प्राप्त किया जा सकता है।

उत्तर

41

आप distinct कॉल on the cursor एक find से बजाय संग्रह पर लौटे करना है:

tags = db.mycoll.find({"category": "movie"}).distinct("tags") 
+1

धन्यवाद दोस्त, मैं के साथ वास्तविक समस्या हो रही किया गया था यह :) –

संबंधित मुद्दे

 संबंधित मुद्दे