आप या तो Collection.FindId()
. का उपयोग करें और फिर आप केवल आईडी मान पास करते हैं, या आप Collection.Find()
. का उपयोग करते हैं और फिर आपको फ़ील्ड नाम के साथ एक मान भी निर्दिष्ट करना होगा:
err2 := c.FindId(bson.ObjectIdHex("58593d1d6aace357b32bb3a1")).One(&data)
// OR
err2 := c.Find(bson.M{"_id": bson.ObjectIdHex("58593d1d6aace357b32bb3a1")}).
One(&data)
अगर आपको कोई त्रुटि नहीं मिलती है, तो इसका मतलब है कि दस्तावेज़ मिल गया है।
अगर आप हमेशा 0
देखते हैं मुद्रित (id_cookie.IdCookie
. के मान के रूप में) फ़ील्ड), इसका मतलब है कि इस आईडी को रखने वाले दस्तावेज़ में फ़ील्ड का एक अलग नाम है।
यह आपके MongoDB में कैसे संग्रहीत है, यह बताने के लिए स्ट्रक्चर टैग का उपयोग करें। उदा. अगर आपके MongoDB में इसे "myid"
. कहा जाता है , आप इसे इस तरह मैप कर सकते हैं:
type id_cookie struct {
IdCookie int `bson:"myid"`
}
यह भी ध्यान दें कि जब भी आप कुछ डेटा क्वेरी करना चाहते हैं तो आपको मोंगोडीबी सर्वर से कनेक्ट नहीं होना चाहिए, इसके बजाय एक बार कनेक्ट करें, और सत्र का पुन:उपयोग करें। विवरण के लिए देखें:एमजीओ - क्वेरी प्रदर्शन लगातार धीमा लगता है (500-650ms)