col.delete_one(query)没有删除数据库中所需的对象。
我尝试打印。它尝试删除,但不会被删除。我用过try和,除非它在哪里打印结果(如果它已删除或没有删除),并且表明它没有被删除。可能是什么情况?
def del_query_one(col,q):
try:
col.delete_one(q)
print("Deleted")
except:
print("Did not delete!")
def foo():
query = col.find({<query condition>})
mylist = list(query)
if mylist:
print("abc")
del_query_one(col,query)
if not mylist:
print("xyz")
# code for what should be done if an entry does not exist
给出一个条目,它必须打印abc,打印“ deleted”,然后转到第二个if语句并打印xyz。但是,它会打印abc并显示“未删除”
答案 0 :(得分:0)
您应该将查询条件传递给delete_one
,而不是find
查询结果。因此,将您的del_query_one
函数称为:
del_query_one(col, <query condition>)