【发布时间】:2013-10-31 17:28:25
【问题描述】:
我正在使用 pymongo 在 mongodb 中插入文档。 这是 router.py 文件的代码
temp = db.admin_collection.find().sort( [("_id", -1)] ).limit(1)
for doc in temp:
admin_id = str(int(doc['_id']) + 1)
admin_doc ={
'_id' : admin_id,
'question' : ques,
'answer' : ans,
}
collection.insert(admin_doc)
我应该怎么做才能在每次插入时 _id 增加 1。
【问题讨论】:
-
到目前为止你尝试了什么?
-
我使用游标获取最后插入的文档的 id 并在该 id 中增加 1。但它不起作用。
-
使用 pymongo 会自动为您插入“_id”。你确定你真的需要手动改变它吗?它主要用作集合中 mongodb 文档的内部唯一变量。您只需删除密钥,mongo 就会生成一个新的唯一密钥。不能保证 ['_id'] + 1 是一个新的唯一 id。
-
查看这个问题的答案:stackoverflow.com/questions/8384029/…