当它命中此api但我无法正常工作时,我总是尝试将视野增加一倍
错误:帖子验证失败:查看:值转换为数字失败
view: {
type: Number,
default: 0
},
async request(req, res) => {
const post = await PostsModel.findOne({ _id: post_id });
post.view = { $inc: { view: 1 } };
await post.save();
}
答案 0 :(得分:1)
以您的方式,您需要执行post.view = post.view + 1
而不是post.view = { $inc: { view: 1 } };
,因为它将把view
字段设置为对象{ $inc: { view: 1 } }
。
或者,如果您想使用$inc
,则需要进行更新操作。像这样:
await PostsModel.findOneAndUpdate({ _id: post_id }, { $inc: { view: 1 } });