无法将数据推送到 mongo 数据库中的当前对象
Unable to push data into current object inside mongo database
我正在使用 mongodb 本机和 Node.js 6.5.0。
我在 mongodb 中有用户对象,其结构如下:
{
"_id" : ObjectId("57d7d294d96a73d128c46db9"),
"id" : "105862592064",
"labels" : [
]
}
我有一个循环(针对找到的每个用户)从 API 获取数据,然后将其推送到数组类型的对象属性中。其中用户 ID user.id
和要推送的数据是 resp.labels
.
这是我的代码:
db.collection('users').update(
{"id":user.id},
{"$push":{"users.labels":resp.labels}}
)
它不会 return 任何错误,也不会更新对象。我做错了什么?
尝试包括 {upsert:true}
:
db.collection('users').update(
{"id":user.id},
{"$push":{"users.labels":resp.labels}},
{"upsert": true}
);
Upsert 插入新值(如果它不存在)。
尝试$set
db.collection('users').update(
{"id":user.id},
{$set:{"users.labels":"hola"}})
Try this:
db.collection('users').update(
{"id":user.id},,
{
$push: {
labels: {
$each: //yourArray
}
}
}
);
$push
用于将单个元素推送到数组。使用 $push
和 $each
一起推送多个元素。此外,对象标签周围的引号不是必需的:
db.collection('users').update(
{ id:user.id },
{ $push: { labels: { $each: resp.labels } } }
)
我正在使用 mongodb 本机和 Node.js 6.5.0。
我在 mongodb 中有用户对象,其结构如下:
{
"_id" : ObjectId("57d7d294d96a73d128c46db9"),
"id" : "105862592064",
"labels" : [
]
}
我有一个循环(针对找到的每个用户)从 API 获取数据,然后将其推送到数组类型的对象属性中。其中用户 ID user.id
和要推送的数据是 resp.labels
.
这是我的代码:
db.collection('users').update(
{"id":user.id},
{"$push":{"users.labels":resp.labels}}
)
它不会 return 任何错误,也不会更新对象。我做错了什么?
尝试包括 {upsert:true}
:
db.collection('users').update(
{"id":user.id},
{"$push":{"users.labels":resp.labels}},
{"upsert": true}
);
Upsert 插入新值(如果它不存在)。
尝试$set
db.collection('users').update(
{"id":user.id},
{$set:{"users.labels":"hola"}})
Try this:
db.collection('users').update(
{"id":user.id},,
{
$push: {
labels: {
$each: //yourArray
}
}
}
);
$push
用于将单个元素推送到数组。使用 $push
和 $each
一起推送多个元素。此外,对象标签周围的引号不是必需的:
db.collection('users').update(
{ id:user.id },
{ $push: { labels: { $each: resp.labels } } }
)