У меня есть модель с массивом встроенных документов.
var CourseSchema = mongoose.Schema({
invitations: [InvitationSchema],
total:Number
});
var InvitationSchema = new mongoose.Schema({
token: { type:String, required: true},
email: String
});
хочет обновить/увеличить общее количество приглашения пути сопоставления маркера приглашения встроенного массива из запроса, здесь я последовал за учебник в http://diogogmt.wordpress.com/2012/03/23/update-elementmatch-and-the-positional-operator-on-mongodbmongoose/
поэтому я попытался
var options = { new: false , select:'_id'};
CourseModel.update({'_id':id,'invitations':{'$elemMatch':{'token':token}}},{'$inc':{'total':1}},options,function(err,data) {
if(err){callback(err, null);}
else{
callback(null, data);
}
})
Но это не сработает, если я удалю «приглашения»: {'$ elemMatch': {'token': токен}}, запрос будет работать
Это работало нормально, когда я попробовал. Что не работает над тем, что вы пытаетесь? – JohnnyHK
Я пробовал на раковине манго, работает также. Я думаю, что мангуста не работает по какой-то причине. Я проверяю, в чем проблема сейчас. – user824624