我尝试定位数组中的对象,然后在匹配的键/值对旁边的同一对象中插入数据。这是一个例子:
profile = [
{
data: 'value',
array: [
'one',
'three'
]
}
]
var i = 0;
var selector = 0;
_.each(profile, function(elem) {
if (elem.data === 'value') {
selector = i;
}
i++
}
profile[selector].array.push('two');
这是一个添加到对象/数组数组的解决方法,但我试图找到一种方法来使用Meteor MongoDB。是否有一个选择器,使我能够定位适当的数组(具有匹配的键/值对)然后瞄准"数组"在它旁边并向它推送一些东西?
答案 0 :(得分:1)
假设您已在mongodb中存储了一个看起来像这样的对象
{
profile : [
{
data: 'value',
array: [
'one',
'three'
]
}
]
}
我能够在mongodb shell中使用它。
db.yourCollection.update(
{"profile.data":"value"},
{"$push":
{
"profile.$.array":"two"
}
}
);
这将找到配置文件属性数据等于"值"的记录。推动"两个"属性数组。