Mongodb go驱动程序接口转换:接口{}是primitive.ObjectID,而不是primitive.ObjectID(来自不同包的类型)

Mongodb go驱动程序接口转换:接口{}是primitive.ObjectID,而不是primitive.ObjectID(来自不同包的类型),mongodb,go,Mongodb,Go,我可以显示结果。InsertedID没有问题,但是,当我尝试访问该值以在其他地方使用它时,我一直会遇到上述错误。我希望在离开插入新对象的方法之前获得该值。错误消息没有任何意义 我用res.InsertedID.(primitive.ObjectID)得到这个错误。正确的方法是什么 如何获得具体的值,最好是十六进制字符串?即使我可以将值作为一个具体的ObjectID而不是一个接口来获取,我也会很高兴。应用程序中有两个名为primitive的包,其中包含一个名为ObjectID的类型。中的具体值来自

我可以显示结果。InsertedID没有问题,但是,当我尝试访问该值以在其他地方使用它时,我一直会遇到上述错误。我希望在离开插入新对象的方法之前获得该值。错误消息没有任何意义

我用res.InsertedID.(primitive.ObjectID)得到这个错误。正确的方法是什么


如何获得具体的值,最好是十六进制字符串?即使我可以将值作为一个具体的ObjectID而不是一个接口来获取,我也会很高兴。

应用程序中有两个名为
primitive
的包,其中包含一个名为
ObjectID
的类型。中的具体值来自其中一个包。断言的类型来自另一个包。由于类型不相等,因此类型断言陷入恐慌

通过修改应用程序以对
原语
包(以及整个驱动程序)使用单个导入路径进行修复


2019年2月,包的规范导入路径从
github.com/mongodb/mongo-driver/bson/primitive
更改为
go.mongodb.org/mongo-driver/bson/primitive
。应用程序可能同时使用这两种导入路径。

这应该是可以接受的答案,这确实是上述错误的原因