【发布时间】:2019-07-14 12:30:28
【问题描述】:
通过“/sync/”API 请求同步用户购物车时,我反复看到以下错误。每当用户更改其购物车的内容时都会调用此方法。
VersionError: 找不到与 id 匹配的文档 "2y4b1hq601cd013e0af25e32" 版本 4 modifiedPaths "cart, cart.items, 购物车.updatedAt" 在 VersionError.MongooseError [作为构造函数] (/node_modules/mongoose/lib/error/mongooseError.js:13:11) 在新的 VersionError (/node_modules/mongoose/lib/error/version.js:18:17) 在 generateVersionError (/node_modules/mongoose/lib/model.js:398:10) 在 model.Model.save (/node_modules/mongoose/lib/model.js:460:27) 在 /controllers/shoppingCart/index.js:48:14 在 /node_modules/mongoose/lib/model.js:4670:16 在 /node_modules/mongoose/lib/utils.js:258:16 在 _hooks.execPost (/node_modules/mongoose/lib/query.js:4065:11) 在 /node_modules/kareem/index.js:135:16 在 process._tickCallback (internal/process/next_tick.js:61:11)
具体的代码行如下:
req.session.save();
delete user.__v;
>> user.save();
return res.send();
我已经尝试过 user.increment() 但这似乎并没有解决这个问题,也没有删除 user.__v 我假设这是冲突的版本,我想对我的用户对象进行版本控制,我只需要强制购物车始终同步到最新版本。
【问题讨论】:
标签: javascript node.js mongodb mongoose