在 Golang 中将 Primitive.ObjectID 转换为字符串
在 Go 中,来自 go.mongodb.org/mongo-driver 的 mongo-driver 进行管理MongoDB 数据类型。但是,将 Primitive.ObjectID 类型转换为字符串需要特定的方法。
当尝试使用类型断言(如提供的代码中所示)时:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(string)
此行会触发错误:
panic: interface conversion: interface {} is primitive.ObjectID, not string
出现此问题是因为 mongoDoc["_id"] 是一个包含 Primitive.ObjectID 类型值的接口{}。类型断言只能对接口值中的基本类型执行。
要获取primitive.ObjectID 的字符串表示形式,请利用primitive.ObjectID 类型的Hex() 方法。此方法检索 ObjectId 字节的十六进制表示形式:
mongoId := mongoDoc["_id"] stringObjectID := mongoId.(primitive.ObjectID).Hex()
以上是在Golang中如何将primitive.ObjectID转换为字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!