get*_*lad 9 mongodb node.js mongodb-query
我正在尝试将upsert数据集添加到Mongo集合中.
当我运行以下代码时,我收到一个错误: MongoError: The dollar ($) prefixed field '$push' in '$push' is not valid for storage.
我根据文档把它放在一起:https://docs.mongodb.org/getting-started/node/update/#update-multiple-documents
版本:MongoDB(windows)= 3.2.0; mongodb(npm包)= 2.1.4
var query = {
county: aCountyName,
state: aStateName
}
var params = {
'$set': {
county: 'Boone',
state: 'MO',
'$push': {
zips: {
'$each': [ '65203' ]
}
}
}
}
(could also be)
var params = {
'$set': {
county: 'Pierce',
state: 'WA',
'$push': {
zips: {
'$each': [ '98499', '98499' ]
}
}
}
}
db.collection(collectionName).updateMany(query, params, {'upsert': true},
function(err, results) {
callback();
}
);
Run Code Online (Sandbox Code Playgroud)
Owa*_*ams 21
我不认为$push是有效的$set.而是尝试将其添加为另一个参数,例如:
var params = {
'$set': {
county: 'Pierce',
state: 'WA'
},
'$push': {
zips: {
'$each': ['98499',
'98499']
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16464 次 |
| 最近记录: |