FindOne Поддокумент в Mongoose
Я пытаюсь найти запрос findOne в Mongoose в поддокументе, но мне не очень повезло...
Моя схема выглядит следующим образом:
var Team = mongoose.Schema({
teamName: String,
teamURL: String,
teamMembers: [{username: String, password: String, email: String, dateCreated: Date}],
});
var Team = db.model('Team', Team);
Мне нужно просто найти электронную почту пользователей из документа, в котором я использую этот запрос
Team.findOne({'teamMembers.username': 'Bioshox'}, {'teamMembers.$': 1}, function (err, team) {
if (team) {
console.log(team[1].email);
}
});
Любая помощь будет оценена!
Ответы
Ответ 1
Вам не хватает уровня teamMembers
вашего объекта, поэтому ваш код должен измениться примерно на следующее:
Team.findOne({'teamMembers.username': 'Bioshox'}, {'teamMembers.$': 1},
function (err, team) {
if (team) {
console.log(team.teamMembers[0].email);
}
}
);