带有 altlas $ne 的 Pymongo 不排除所有文档

Pymongo with altlas $ne doesn't exclude all documents

我正在使用 Pymongo 检索集合,我需要排除文档。 根据 Mongo 集合排除参数,我在查询中使用了 $ne 并且我还在我的投影中排除了字段。

好像不行。我正在获取 myVar 设置为 true 的文档。

cursor = collection.find(
        { 'myVar' : { '$ne': 'true' }},
        { 
        'secret':  0,
        'Policies': 0
        }
        )

注意我的值是一个布尔值,但如果我按照下面写的那样做,我会得到一个错误:

{ '$ne': true }

请高手帮帮我! :)

Python 使用 True/False 作为布尔运算符,所以你应该使用:

cursor = collection.find(
        { 'myVar' : { '$ne': True }},
        { 
        'secret':  0,
        'Policies': 0
        }
        )

查询看起来不错,但您也可以使用替代方法:

cursor = collection.find(
        { 'myVar' : { '$in': [None, False] }},
        { 
        'secret':  0,
        'Policies': 0
        }
        )