使用PyMongo,我调用update()在集合中创建一个新文档。我想在更新或创建文档后使用文档的_id。如何获取更新或新创建的文档的_id?
这个问题一般与MongoDB有关,而不仅仅是PyMongo。
更新声明,根据请求
db.texts.update({"title": pRef["book"], "versionTitle": text["versionTitle"], "language": text["language"]}, text, True, False)
答案 0 :(得分:0)
您可以手动设置自己的_id,而不是让数据库自动为您的文档生成_id。当您插入已设置_id字段的文档时,它将保留该值,并且不会分配任何新值。
您可以像数据库使用ObjectId()
一样创建ObjectId,但您也可以为_id分配任何类型的任何值,只要您可以保证它是唯一的,所以当您的数据时已经有一个自然键,您可以考虑将其用作_id的值。