Javascript 如何使用变量作为键更新mongo集合
假设以下文档结构,如何使用变量定义指定的键?价值观可以是观察的、超现实的、物理的或其他的 如果需要使用对象来创建更新,请说明如何创建。如果重组文件更好,那么欢迎提出建议Javascript 如何使用变量作为键更新mongo集合,javascript,mongodb,meteor,Javascript,Mongodb,Meteor,假设以下文档结构,如何使用变量定义指定的键?价值观可以是观察的、超现实的、物理的或其他的 如果需要使用对象来创建更新,请说明如何创建。如果重组文件更好,那么欢迎提出建议 Comedians.update( { "id":row[0]}, { 'id':row[0], 'surname':row[1], 'firstName':row[2], 'observational':{ //<--key generate
Comedians.update(
{ "id":row[0]},
{ 'id':row[0],
'surname':row[1],
'firstName':row[2],
'observational':{ //<--key generated dynamically (observational/ surreal/ physical)
'routines':{
'year1':{
'club1':row[6],
'club2':row[8],
'club3':row[10]
},
'year2':{
'club1':row[14],
'club2':row[16],
'club3':row[18]
},
'year3':{
'club1':row[20],
'club2':row[22],
'club3':row[24]
}
},
'jokes':{
'year1':{
'club1':row[7],
'club2':row[9],
'club3':row[11]
},
'year2':{
'club1':row[13],
'club2':row[15],
'club3':row[17]
},
'year3':{
'club1':row[19],
'club2':row[21],
'club3':row[23]
}
},
}
},
{upsert: true},
function(error,result){
if ( error ) console.log ( error );
if ( result ) console.log ( result );
});
Comedians.update(
{“id”:行[0]},
{'id':第[0]行,
“姓氏”:第[1]行,
“firstName”:第[2]行,
“observational”:{/这是基本javascript。您需要使用代码创建用于更新的对象,而不是将其作为常量写入。以下是一种方法:
var newObj = {
'id':row[0],
'surname':row[1],
'firstName':row[2],
};
var myVariable = "observational"; //<--key generated dynamically (observational/ surreal/ physical)
newObj[myVariable] = {
'routines':{
'year1':{
'club1':row[6],
'club2':row[8],
'club3':row[10]
},
'year2':{
'club1':row[14],
'club2':row[16],
'club3':row[18]
},
'year3':{
'club1':row[20],
'club2':row[22],
'club3':row[24]
}
},
'jokes':{
'year1':{
'club1':row[7],
'club2':row[9],
'club3':row[11]
},
'year2':{
'club1':row[13],
'club2':row[15],
'club3':row[17]
},
'year3':{
'club1':row[19],
'club2':row[21],
'club3':row[23]
}
},
};
Comedians.update(
{ "id":row[0]},
newObj,
{upsert: true},
function(error,result){
if ( error ) console.log ( error );
if ( result ) console.log ( result );
}
);
var newObj={
“id”:行[0],
“姓氏”:第[1]行,
“firstName”:第[2]行,
};
var myVariable=“观测”;//请用您的问题更新您的问题tried@mvanio这看起来像是和的复制品。这些回答了你的问题还是你问了其他问题?@DavidWeldon尝试了这些,认为我不理解如何将解决方案应用于嵌入式文档。或者可能文档结构不正确。顺便说一句,不错的博客,提到了y我们的“常见错误”出现了好几次。非常有用。谢谢。测试了这个,它按预期工作。FWIW I很接近。