我有一个结构
locations : { //info,
"events" :[ { //data
"displayed" : True},
{ //data
"displayed" : False}
]
}
每个位置都有许多事件,我们在其中定义是否显示事件。
我的python代码:
#load the data
locations = db.col.find({'events.displayed': True})
#remove manually
for l in locations:
for e in l['events']:
if e['displayed'] == False:
#this item should be deleted
print e
我知道如果只有 a为真并且它将返回整个项目,则{'events.displayed': True}
可以满足此要求。events.displayed
我想问一下我是否可以在find()
通话中忽略那些带有"displayed" : False
. 如果 pymongo 不会发生这种情况,我想用"displayed" : False
优化的(因为双循环)方式使用 python 手动删除项目(可能是 itertools 库的东西?)。