我试图检查我作为请求发送的一个值是否已经存在于一个特定用户的数组中。
{
"_id": "63233972df0f14076e027106",
"firstName": "mako",
"lastName": "mako",
"userName": "mako",
"email": "mako@gmail.com",
"friends": [
"Josh"
],
"__v": 0
}
我正在发送以下请求
{
"userName": "mako",
"friend": "Josh"
}
我想检查请求中的“friend”是否已经存在于数据集中,并返回true或false。
我尝试过使用$exists和$in,但语法不正确
const checkFriend = async(req, res, next)=>{
try {
const {userName, friend} = req.body
const check = await User.findOne({userName: userName, $in: {friends: friend}})
res.send(check)
} catch (error) {
}
}
我尝试的NodeJS代码,唯一返回任何内容的代码
2条答案
按热度按时间i34xakig1#
您的逻辑是正确的,但语法问题不大。
xdyibdwo2#
您不需要
$in
。Mongo将检查整个数组,只要执行以下操作: