나는 다른 게시물을 보았으나 아무도 내가하려고하는 것을 다루지 않는 것 같다. 배열에 type_ids가있는 모든 레코드를 검색하고 현재 로그인 한 사용자에게 속하는 쿼리를 만들어야합니다. 여기에 내가 가진 무엇 :여러 조건을 사용하여 문서를 찾는 방법은 무엇입니까?
검색어 :
app.post('/photos', function(req, res) {
Photos
.find({
'type_id': { $in: req.body.type_ids },
$and : {'groups.users': { $in: req.user._id }}
})
.select('name size')
.exec(function(err, data) {
return res.json(data);
});
});
스키마 :
var photoSchema = mongoose.Schema({
name : String,
size : String,
type_id : String,
created : {
type: Date,
default: Date.now
},
groups : {
users : [],
other : []
}
});
내가 일을 얻을 수있는 유일한 것은 다음과 같은 쿼리입니다 :
app.post('/photos', function(req, res) {
Photos
.find({'type_id': { $in: req.body.type_ids }})
.select('name size')
.exec(function(err, data) {
return res.json(data);
});
});
하지만은, 분명히 이것은 특정 사용자에 대한 결과 만 필요하기 때문에 작동하지 않습니다. 라인 $and : {'groups.users': { $in: req.user._id }}
분명히 작동하지 않습니다,하지만 난 그것을 고칠 방법을 잘 모르겠습니다. 어떤 아이디어?
감사합니다.하지만 여전히 작동하지 않습니다. 나는''groups.users ': {$ in : req.user._id}''와''groups.users': req.user._id''를 시도했지만 어느 쪽도 효과가 없었습니다. 쿼리에서이 줄을 제거하면 데이터를 다시 얻습니다. 단지'user._id'에 의해 필터링되지 않습니다. –
수행하려는 작업에 대한 의심을 제거하려면 수행하려는 쿼리 종류의 특정 예와 일치하거나 일치하지 않는 실제 샘플 문서를 제공 할 수 있습니까? – wdberkeley
@ChrisPaterson'req.user._id' 변수가 예상했던 것과 다르다고 들립니다. –