Mongodb mongoose$inc不工作,希望插入1的增值
我总是试图将视图字段增加一个,当它碰到这个api时,但不起作用 错误:Posts验证失败:视图:值转换为数字失败Mongodb mongoose$inc不工作,希望插入1的增值,mongodb,mongoose,Mongodb,Mongoose,我总是试图将视图字段增加一个,当它碰到这个api时,但不起作用 错误:Posts验证失败:视图:值转换为数字失败 view: { type: Number, default: 0 }, async request(req, res) => { const post = await PostsModel.findOne({ _id: post_id }); post.view = { $inc: { view: 1 } }; await pos
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();
}
按照您的方式,您需要执行
post.view=post.view+1
而不是post.view={$inc:{view:1}因为它将视图
字段设置为对象{$inc:{view:1}
或者,如果要使用$inc
,则需要执行更新操作。比如:
await PostsModel.findOneAndUpdate({ _id: post_id }, { $inc: { view: 1 } });