2
我試圖改變基礎上,英雄的名字實力像這樣的文件:
"_id" : ObjectId("52b0d27b5dee463864000001"),
"author" : "niko",
"permalink" : "super_heroes"
"hero" : [
{
"name" : "Batman",
"strength" : 1,
"magic" : [ ],
"times" : [ ]
},
我無法改變它在最初嘗試:
var operator = { '$set' : { 'hero.strength' : strength } };
var query = { 'permalink': permalink , 'hero.name':name };
posts.update(query, operator, options, function(err, numModified) {...})
我MongoError: can't append to array using string field name: strength
。
但看到this post後我添加了一個美元符號,它的工作:
var operator = { '$set' : { 'hero.$.strength' : strength } };
什麼,在一個JSON關鍵美元符號嗎?我嘗試了使用Google搜索,但是我只是想了解jQuery的一百萬個解釋。謝謝。