使用 go.mongodb.org/mongo-driver 中的 MongoDB 驱动程序时,转换原语。将 ObjectID 转换为字符串可能具有挑战性。
尝试使用 mongoDoc["_id"].(string) 将断言 mongo-driver.ObjectID 键入字符串会导致运行时恐慌:
panic: interface conversion: interface {} is primitive.ObjectID, not string
发生错误是因为 mongoDoc["_id"] 持有一个类型为interface{}的接口值,具体值为primitive.ObjectID。要成功转换为字符串,我们需要断言 Primitive.ObjectID 值本身而不是接口值。
mongoId := mongoDoc["_id"].(primitive.ObjectID) stringObjectID := mongoId.Hex()
primitive.ObjectID 类型上的 Hex() 方法提供了其十六进制表示形式字节。
以上是如何使用 MongoDB 驱动程序将 `primitive.ObjectID` 转换为 Go 中的字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!