1
配列内のオブジェクトを更新しようとしています。保存を伴うMongoose更新サブ文書が機能しない
マイコード:
module.exports = (req, res) => {
var givenProject = req.body;
var query = mongoose.model('cv').findOne({alias: req.params.alias});
query.exec(function(err, cv){
if(err){
res.status(400).send({message: 'Could not find cv with alias: ' + req.params.alias, err: err})
}
var doc = cv.projects.id(req.params.id);
doc.langTitles = givenProject.langTitles;
doc.langDescriptions = givenProject.langDescriptions;
doc.save(function(err){
if(err){
res.status(400).send({message: 'Could not update project', err: err});
return;
}
res.status(200).send();
});
});
};
エラーが与えられていません。 var doc
が見つかりました。投稿されたデータのデータ構造はdoc
と同じで、元のデータとは異なります。
文書は更新されません。私はここで何が欠けていますか?マングースdocsによると
ライン 'VARドキュメント= cv.projects.id(req.params.id)後のドキュメントとは何であると
交換してみてください;'? 'cv.projects'とは何ですか? 'cv.projects.id'は関数ですか? – marekful
サブ文書を見つけるためにmongooseに組み込まれた関数。 http://mongoosejs.com/docs/subdocs.html – Per