繁体   English   中英

使用 flask_pymongo 进行 upsert 时如何获取 Id?

[英]How get Id when do upsert with flask_pymongo?

我想获取文档 ID,当我这样做并插入时,目前 flask-pymongo 仅在插入文档时返回 object Id,但在更新时不返回。

我正在使用以下代码:

a = mongo.db.abcd.update_one(
    {'abcd': 'abcd1'}, {"$set": {"abcd": "abcd2"}}, upsert=True)

for value in a.raw_result.items():
    print(value)

有什么办法可以返回id?

谢谢

update_one()返回一个UpdateResult实例( https://pymongo.readthedocs.io/en/stable/api/pymongo/collection.html#pymongo.collection.Collection.update_one )并且 UpdateResult 有一个属性upserted_id

文档说:如果发生更新插入,则插入文档的 _id。 否则无。

https://pymongo.readthedocs.io/en/stable/api/pymongo/results.html#pymongo.results.UpdateResult.upserted_id

看起来这就是你需要的

暂无
暂无

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

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