gpt4 book ai didi

python - 使用 mongoengine 成功操作 MongoDB 的返回值是多少?

转载 作者:行者123 更新时间:2023-11-30 23:21:34 25 4
gpt4 key购买 nike

我正在尝试制定规则和/或考虑 mongoengine 返回什么作为操作的成功代码。我可能是错的,但根据我的测试,有时“操作成功执行”返回 1,有时返回 0。这有什么规则吗?

在 mongoengine 文档中没有提及有关数据库操作的返回值。

我只想构建我的应用程序,并确定如果我运行:

result = MyDocumentClass.objects(id=document_id).update_one(**update_dict)

或者:

result = MyDocumentClass.objects(id=document_id).delete()

结果=1(或0,以SUCCESS代码为准),该操作肯定成功了。

最佳答案

根据source code , update()返回更新文档的数量,delete()不返回任何内容(换句话说,返回 None)。

我个人认为判断操作是否成功最可靠的方法是看命令是否抛出异常。例如:

try:
MyDocumentClass.objects(id=document_id).update_one(**update_dict)
result = 1
except mongoengine.errors.OperationError:
result = 0
# process exception (log, for example)

注意:为了使 MongoEngine 不会静默失败并抛出异常,您需要通过设置 write_concern 来启用 safe 模式论证,另见:

关于python - 使用 mongoengine 成功操作 MongoDB 的返回值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24868654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com