我有以下api来处理对mongodb的更新:
router.patch('/update/:id', wrapAsync(async function(req) {
console.log('id: ', req.params.id);
console.log('req.body: ', req.body);
const result = await db.collection('Whisky'.findOneAndUpdate({
_id: Archetype.to(req.params.id, ObjectId)
}, {$set: req.body}, {returnOriginal: false}))
console.log('result: ',result);
return { result }
}))
前两个console.log有这个输出:
id: 5b0bd25e8da4efd060c4f566
req.body: { contractAddress: '0xd69026Bc6703ADbC1F571D6FBf07eF4a8e33fA0a' }
对findoneandupdate的调用似乎没有返回。我正在尝试更新我的mongodb中的contractAddress字段。我没有到达最后一个console.log语句。有没有人知道我做错了什么?该记录存在于数据库中。我也尝试使用JSON.stringify(req.body)调用fineoneandupdate,但这也不起作用。谢谢!
答案 0 :(得分:0)
您错过了)
方法的结束collection
。
从以下位置更改:
await db.collection('Whisky'.
要:
await db.collection('Whisky').