在nodejs和mongodb的字段中使用参数时查找导致为空的查询

时间:2016-05-27 01:34:45

标签: node.js mongodb mean-stack

我试图找到某个位置附近的用户,其中field1 = No和field2 = No(这是cat等于(field2)),但是当我尝试运行这样的查询时,它返回没有结果< / p>

function (currentLoc, radius, cat, db, callback) {
    ...
    var query = db.collection('User').find({
        CurrentLoc: {
            $geoWithin: { $centerSphere: [currentLoc, maxDistance] }
        }, 
        field1: "No",
        cat: "Yes"
    });
}

如果我尝试使用field2而不是参数cat运行查询,则查询将起作用并返回结果。不知道为什么它也不能用于传递参数

1 个答案:

答案 0 :(得分:0)

你告诉它寻找属性'猫'。您需要手动设置查询属性。见How to use a variable as a field name in mongodb-native findOne()?