Hallo habe ich diesen Code in node.js, in dieser Ich weiß, eine Suchabfrage mit MungoFehler nicht gesetzt Eigenschaft undefined
router.post('/query',function(req,res,next){
if (req.body){
var result=[];
console.log(req.body.filters);
Pollee.find(req.body.filters)
.select('id age birthday user')
.populate('user','email')
.lean(true)
.exec(function(err,pollees){
if(err) {
console.log(err);
return next(err);
}
for (var i = 0; i < pollees.length; i++){
var query = test(pollees[i]._id);
query.exec(function(err,inters){
if(err)
return console.log(err);
inters.forEach(function(inter){
pollees[i].interaction = inter;
});
});
}
res.json(pollees);
};
})
}
});
function test(id){
var promise = Interaction.find({pollee:id}).select('status other');
return promise;
}
Mein Problem hier seine im Interaction.find wenn ich versuche, das passieren Ergebnisse dieser Abfrage auf pollees [i] .interaction = inter; die Konsole setzt mich Fehler
Kann Eigenschaft pollees nicht setzen [i] .interaction = inter; von undefined
Irgendeine Idee?
Die verwendeten Modelle I
var interactionSchema = new Schema({
pollee: { type: ObjectId, ref: 'Pollee' },
answers: { type: [ObjectId], ref: 'Answer', autopopulate: true },
status: type: String
});
var PolleeSchema = new Schema({
firstName: String,
lastName: String,
gender: String,
user: { type: ObjectId, ref: 'User', required: true },
interactions: { type: [ObjectId], ref: 'Interaction', autopopulate: true }
});
var userSchema = new Schema({
email: String,
pollee: { type: Schema.Types.ObjectId, ref: 'Pollee', autopopulate: true }
});
Vielen Dank!
Werke aber Befragten seine ohne Wechselwirkungsfeld zurück – ZizouJd
sicher, weil Sie Rückkehr die Antwort, bevor die Rückrufe auch – anytimecoder
aktualisiert meine Antwort für dieses Problem ausgeführt werden sollen – anytimecoder