在Golang中使用MONGODB操作时,开发人员可能会遇到iDID方法的问题,使用MOGO库进行MongoDB操作时,使用MGO库进行MONGO库时,使用MGO Library进行MONGODB操作时,使用MGO Library进行MOGO Library时,将MOGO库时可能会遇到ID ID的问题。从以下代码段及其输出中可以明显看出这个问题: session.SetMode(mgo.monotonic,true)
coll:= session.db(“ aaaw_web”)。c(“ cron_emails”)
变量结果
fmt.printf(“%v”,messages.ID)
err = coll.findid(bson.objectId(messages.id))。一个(&result)
fmt.printf(“%v”,结果)
fmt.println(err)
,尽管MongoDB中存在的文档,但代码未能检索它。要解决此问题,了解mongodb中对象ID的性质至关重要。 [umpurpurs] [umpurpurs] [umpurpurpript]
fien firingcreated
session.SetMode(mgo.Monotonic, true)
coll := session.DB("aaaw_web").C("cron_emails")
var result Result
fmt.Printf("%v", message.ID)
err = coll.FindId(bson.ObjectId(message.ID)).One(&result)
fmt.Printf("%v", result)
fmt.Println(err)
2 bytes of process identifier
595f2c1a6edcba0619073263 {ObjectIdHex("") 0 0 0 0 { 0 false 0 } 0 0 0 0 0 0 0} ObjectIDs must be exactly 12 bytes long (got 24) not found
Converting Hexadecimal String to MongoDB Object ID
In the code snippet provided, the Message.ID的值是对象ID的24个字符十六进制字符串表示。要将此字符串转换为mongodb对象ID,必须使用bson.objectIdhex()函数:[&& && && && && && && && && && && ur = coll.findid(bson.objectIdhex(message.id))。一个(&result)。利用适当的函数在十六进制表示和对象ID之间进行转换,开发人员可以使用MGO库有效地检索文档。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3