我正在尝试使用node.js在mongodb中插入和更新文档。我可以使用以下代码成功插入文档。
var obj = { jsonit:
{ users: {},
groups: {},
meta:
{ id: 'daf09a36-b961-3db4-3144-aa19479c70c7'},
name: 'John Doe',
meta: undefined,
loki: undefined
}
Collection.insert( obj ).then( function insertCollectioncb(object) {
obj = object;
});
之后我想更新整个文档,因为我不知道哪些密钥会被更改,或者哪些新密钥将被插入。我正在使用以下代码来更新我的文档。
var obj = jsonit:
{ users: {},
groups: {},
meta:
{ id: '0da70a1f-f5cd-0fd2-10c8-7aa421296057'} ,
name: 'John Doe',
creationDate: '2016-10-13T11:05:08.453Z',
income: 1000,
meta: null,
loki: null
}
Collection.update( { _id: '57ff860b240e9d50a42ec53c' }, obj ).then( function updateBranchcb(object) {
obj = object;
});
我可以在mongo shell中成功完成但不能通过节点js。
答案 0 :(得分:0)
试试这个
var obj = jsonit:
{ users: {},
groups: {},
meta:
{ id: '0da70a1f-f5cd-0fd2-10c8-7aa421296057'} ,
name: 'John Doe',
creationDate: '2016-10-13T11:05:08.453Z',
income: 1000,
meta: null,
loki: null }, true
Collection.update( { _id: '57ff860b240e9d50a42ec53c' }, obj ).then( function updateBranchcb(object) {
obj = object;
});
问题是一个额外的大括号
meta:
{ id: '0da70a1f-f5cd-0fd2-10c8-7aa421296057'} },