我的后端
任何人都可以告诉我我的mongodb中有多少用户。例如,我的数据库中有3个用户,其中2个用户有评论,而其余一个用户没有评论。谁拥有评论,我只需要让该用户进入前端。我的mongodb结构是:
_id:ObjectId(“ 123”) 用户名:“ xx” 电子邮件:“ xx” 评论:数组 0:对象
虽然我正在使用以下代码,但我正在使所有用户都进入前端。但是我只需要具有评论的人,而只有该用户才需要进入前端。
//Getting reviews in Users to homepage
userRouter.post('/getreviews', (req, res) => {
Collections.user.find({}, {"reviews":1,"username":1}, function (err, result) {
if (result) {
// console.log(result);
res.status(200).json({users:result.map((user) => user.reviews)});
} else {
res.status(500).send("User Not Found with Details: " + JSON.stringify(user));
}
})
});
答案 0 :(得分:2)
您需要在第一个{}中添加条件,以检查评论是否存在 {“评论”:{$ exists:true}}
//在用户的主页上获得评论
userRouter.post('/getreviews', (req, res) => {
Collections.user.find({"reviews": {$exists: true}}, {"reviews":1,"username":1}, function (err, result) {
if (result) {
// console.log(result);
res.status(200).json({users:result.map((user) => user.reviews)});
} else {
res.status(500).send("User Not Found with Details: " + JSON.stringify(user));
}
})
});