Я пытаюсь передать параметр в агрегатный запрос моего mongodb, выполнив:
var isLargeCal = function(param_1) {
console.log('received param_1='+param_1)
if (param_1 > 100) {
return "Yes";
} else {
return "No";
}
};
db.DetonationDataEvents.aggregate([
{
"$project": {
"isLargeCal": isLargeCal("$Caliber")
}
}
])
А мои данные выглядят так:
{"_id" : 1 , "Caliber" : 100}
{"_id" : 2 , "Caliber" : 155}
...
{"_id" : 140 , "Caliber" : 234}
Но результаты, которые я получаю, всегда "Нет":
{"_id" : 1, "isLargeCal":"No"}
{"_id" : 2, "isLargeCal":"No"}
...
{"_id" : 140, "isLargeCal":"No"}
И когда я смотрю на консоль, я вижу received param_1=$Caliber
.
Таким образом, функция всегда получает параметр в виде строки $ Caliber, а не по его значению.
Как передать параметр по значению в функцию?