繁体   English   中英

mongo-go-driver 获取插入的文档

[英]mongo-go-driver get inserted document

Collection.InsertOne()返回一个*InsertOneResult ,它只包含插入文档的 ID。 要获取插入的文档,您必须执行另一个Collection.Find()查询。 有没有办法一步做到这一点?

当前的解决方法是使用Collection.FindOneAndUpdate()并将Upsert设置为 true,因为这会返回一个*SingleResult ,然后可以将其解码为一个结构体,并将其发送回客户端。

如果您希望您的申请有完整的文件:

  • 在客户端生成_id
  • 插入完整文档

此时,您拥有的文档正是数据库拥有的文档,从插入中返回它是毫无意义的。

其他一些数据库在服务器端生成 id,但在 MongoDB 的情况下,每个驱动程序在客户端实现 id 生成,以便在插入之前可以完全知道每个文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM