python - 在 MongoDB 中插入指定 _id 字段的变量

标签 python mongodb pymongo

我想插入一个变量,例如

a = {1:2,3:4}

进入我的数据库,具有特定的ID“56”。从文档中可以清楚地看出我可以执行以下操作:

db.testcol.insert({"_id": "56", 1:2, 3:4})

但是,我无法找到任何方法来插入“a”本身,指定一个 id。换句话说,我想做这样的事情

db.testcol.insert(a, "_id"="56")

但是它不起作用。这可能吗?

最佳答案

插入仅接受最终文档或文档数组,以及包含集合附加选项的可选对象。

db.collection.insert(
   <document or array of documents>,
   { // options
     writeConcern: <document>,
     ordered: <boolean>
   }
)

您可能希望提前将 _id 添加到文档中,但与文档的创建分开:

a = {1:2,3:4}

使用点表示法:

a._id = 56;

使用方括号表示法:

a['_id'] = 56;

然后,插入:

db.testcol.insert(a);

结果:

{
    "_id" : 56,
    "1" : 2,
    "3" : 4
}

顺便说一下,这实际上是在 JavaScript 中向对象添加键值对的方法。

关于python - 在 MongoDB 中插入指定 _id 字段的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30980232/

相关文章:

mongodb - 检查游标是否超时

python - 使用 PyMongo,通过 "_id"查询不会在 Python 的 MongoDB 中返回文件

python - 如何根据列的当前值和其他两列的值覆盖列的映射?

python - 使用数组输入神经网络

Mongodb版本不匹配问题3.6到4.0升级

python - 相关请求 MySQL,类似 MongoDB

python - 每个文档中 ISODate 之间的差异?

python - 在 Google DFS 文件夹中运行 jupyter 笔记本时出现 "Save and Checkpoint"错误

javascript - 事件源并不代表每个客户端/ session 的信息

javascript - Mongo 对象 ID 彼此不相等