J'ai ce problème vraiment ennuyeux où je ne peux pas mettre à jour quoi que ce soit en utilisant Mongoose. et la documentation ne contribue pas du toutLorsque j'essaie d'insérer subdoc dans mongodb à l'aide de mongo, il retourne "ne peut pas utiliser la partie (..."
Voici mon schéma:.
var CRMModel = mongoose.model('CRM', new Schema({
title: { type: String, index: true }
, author: String
, remarks: String
, date: { type: Date, default: Date.now() },
comments:[{
title:String,
seq:Number,
date:{ type: Date, default: Date.now() }
}]
})
);
et voici le code où je veux ajouter un commentaire au tableau comments
:
CRMModel.update({_id:crmId.trim()},{ $push: { 'comments.title': req.body.title, 'comments.seq': req.body.seq} },
{upsert:true},
function(err, customer){
if(err){
console.log(err);
}
}
);
A ce stade, je reçois l'erreur:
{ [MongoError: cannot use the part (comments of comments.title) to traverse the element ({comments: []})]
name: 'MongoError',
message: 'cannot use the part (comments of comments.title) to traverse the element ({comments: []})',
driver: true,
index: 0,
code: 16837,
errmsg: 'cannot use the part (comments of comments.title) to traverse the element ({comments: []})' }
J'ai cherché les problèmes similaires sur Stack Overflow mais je did't résoudre ce problème. Je serai reconnaissant si quelqu'un peut m'aider.
Merci beaucoup, je résous le problème avec votre aide codes.Your vraiment me sauver de coincé dans ce problème et je peux me reposer maintenant. O (∩_∩) O –