我想获取附近的100个用户,但我想删除当前被阻止的用户,这样如果有10个被阻止的用户,则返回的用户不会是90但是100 ...
我写了这个查询(使用mongojs作为节点):
db.users.find({location: {$near: [lng, lat]}, _id:{$ne: ObjectId('4ffeff845d46eaf1aa000002')}}, function(err, docs) {
if(!err) {
res.json(users);
};
}).limit(100);
这只适用于一个被阻止的用户,我在用户文档中有一个字段,以便用户可以阻止多个用户:
{
...
blockedUsers: ['4ffeff845d46eaf1aa000002', '4ffeff845d46eaf1aa000012',....]
}
我已经厌倦了在$ ne之后添加一个ObjectId数组,但它什么也没做,我也厌倦了一个变量,所有的ObjectId都被||分开了而且也没能奏效。
我的问题是如何查询mongodb最近的用户限制为100,删除被阻止的用户,以便实际返回100而不是减去被阻止的用户,如果我在查询后删除它们?
答案 0 :(得分:2)