python - pymongo 上服务器生成的 ObjectID

标签 python mongodb pymongo

我正在使用 pymongo(mongodb 的 python 模块)。

我希望服务器自动创建 ObjectID,但是当我们不指定它时,它似乎是由 pymongo 本身创建的。

它提出的问题是我使用 ObjectID 按时间排序(仅按 _id 字段排序)。然而,它似乎使用每台计算机上设置的时间,因此我们不能真正依赖它。 您知道如何解决这个问题吗?

最佳答案

如果您调用save并向其传递一个不带 _id 字段的文档,您可以通过设置(神秘命名的) manipulate< 来强制服务器添加 _id 而不是客户端 选项为 False:

coll.save({'foo': 'bar'}, manipulate=False)

关于python - pymongo 上服务器生成的 ObjectID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24111937/

相关文章:

c# - 将 C# MongoDB LINQ 与鉴别器一起使用

python - Pymongo 匹配和排序

python - PyMongo 中的 MapReduce

python - 为什么 scipy 的稀疏 csr_matrix 向量点积比 numpy 的密集数组慢?

python - 如何禁用 Flask-Cache 缓存

python - 尝试使用 Python xlwt 保存 Excel 文件时出现 UnicodeDecodeError

python3/selenium/automation - 查找包含给定字符串的 ID

mongodb - 为什么 MongoDB 副本集中的最大节点数恰好是 12?

javascript - 在javascript中的for循环中维护http请求的顺序

mongodb - mongodb 在两个集合之间加入