现在的数据结构是这样的
course:{
name:String,
chapter: [{
name: String,
knowledge: [{
name: String,
exam: [{
name: String,
}]
}]
}]
}
要想修改knowledge.name,修改语句该怎么写?之前在修改chapter.name时我是这样写的
Course.update({
"chapter._id": req.body.id
}, {
$set: {
"chapter.$.name": name, //名称
}
})
.exec(function(err, num) {
});
不知道在修改第三级嵌套文档时,$定位符改怎么使用。
Sebenarnya, pertanyaan bersarang, pengubahsuaian bersarang, dll. Jika anda menemui nod lapisan demi lapisan, kecekapannya tidak begitu tinggi.
Pangkalan data dokumen, secara terang-terangan, sentiasa rentetan rentetan dalam format seperti json, tidak kira betapa dalam sarangnya.
Cara terpantas dan langsung adalah seperti berikut:
Pastikan sahaja program anda kekal tidak berubah. Cari keputusan dahulu, ubah suai hanya nama pengetahuan, dan kemudian kemas kini.
Apabila mana-mana operasi pangkalan data berasa janggal, menyusahkan, dan tidak cekap, anda harus melihat ke belakang dan memikirkan sama ada reka bentuk struktur pangkalan data boleh diperbaiki. http://www.cnblogs.com/mokafamily/p/4102829.html, anda boleh lihat bahagian "1. Normalisasi dan nyahnormalisasi" dalam artikel ini