Vla*_*lad 4 javascript mongodb node.js express
我正在尝试通过动态键推送数据
数据库结构:
{
"obj1":{
"array":[
{
"field1":"text1"
},
{
"field2":"text2"
}
]
},
"id":123;
},
{
"obj2":{
"array":[
{
"field1":"text1"
},
{
"field2":"text2"
}
]
},
"id":1234;
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用变量作为地图路径中的键:
var a = 'obj2';
db.collection('fooCollection').update({'id':1234},{$push:{a.array:{ "field3":"text3"}}});
Run Code Online (Sandbox Code Playgroud)
如果我做:
db.collection('fooCollection').update({'id':1234},{$push:{"obj2.array":{ "field3":"text3"}}});
Run Code Online (Sandbox Code Playgroud)
它有效,但我非常需要使用动态密钥。
这不能用对象文字来完成。尝试这个:
var a = 'obj2';
var pushObj = {};
pushObj[a + '.array'] = { "field3": "text3" };
db.collection('fooCollection').update({ 'id':1234 }, { $push: pushObj });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1911 次 |
| 最近记录: |