MongoError:无法规范化查询:BadValue不支持的投影选项:$ inc:{count:1}
var totalActiveUser = (req, res, next) => {
TotalUser.findOne({ default: "active"}, { $inc: { count: 1 }},
function(err, result) {
if (err) throw err;
console.log(result);
res.send(result);
});
modelSchema:
activeCount: {
type: Number,
count: 0,
default:"active"
},
答案 0 :(得分:2)
您正在使用$ inc,它是findOne的更新操作,应与findOneandupdate一起使用。使用findOne,第二个{}成为投影。
此外,您进行此查询的目的是什么?
如果要更新,则:
var totalActiveUser = (req, res, next) => {
TotalUser.findOneAndUpdate({ default: "active"}, { $inc: { count: 1}},
function(err, result) {
if (err) throw err;
console.log(result);
res.send(result);
});
ADD multi:适用于所有更新
要计算活动用户数,请尝试以下操作:
TotalUser.aggregate(
[
{
$match: {
default:"active"
}
},
{
$count: "active_users"
}
]
)
或不聚合:
TotalUser.find({"default" : "active"}).count()