我正在尝试通过_id创建一个“喜欢”的路由,然后在user.post
内查询一个对象ID,到目前为止我试过这个:
User.find({
"_id": logged_user,
"posts_id": {
$elemMatch: req.body.id
}
}, (err, data) => {
if (err) {
res.json(err)
}
console.log(data);
})
架构:
username: String,
posts:[{
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}]
它返回一个空数组'[]',如果存在,我怎么能返回false?
答案 0 :(得分:2)
您正在使用$ elemMatch错误。它需要一个对象。这样做:
User.find({"_id":logged_user,"posts":{$elemMatch: {$eq : req.body.id}}},(err,data)=>{
if(err){
res.json(err)
}
console.log(data);
)