node.js - 使用 findOneAndUpdateQuery- Mongoose 中的文档值更新文档内的值
问题描述
我有这样的用户方案
const userSchema = new mongoose.Schema(
{
name: {
type: String,
},
points: Number
}
我想使用当前用户的积分更新用户积分,即user.points += 100 或像这样在查询中
await User.findByIdAndUpdate( userId ,
{ loyaltyPoints : user.loyaltyPoints + 100}
, {new :true, runValidator :true} )
解决方案
由于 points 是一个数字,因此您可以使用专门为此目的设计的MongoDB $inc 。所以一个+= 100
将是
{
$inc: {
points: 100
}
}
推荐阅读
- google-cloud-functions - Firebase 函数找不到名称“BigUint64Array”、“BigInt”、“BigInt64Array”
- pdf - 在 S3 上存储 tesseract OCR 训练数据?
- c# - OPC UA:调用方法 Sinumerik
- git - Eclipse - 合并工具覆盖以前的提交
- python - 如何在 python3 中插入风向数据?
- java - 警告:org.springframework.web.servlet.PageNotFound - 没有 GET 映射
- azure-devops - Azure DevOps 服务器 - 在维护窗口期间暂停/恢复所有管道
- python - numpy 在另一个数组中创建最大连续对的数组
- postgresql - Dockerized Spring Boot + Postgres 连接被拒绝
- amazon-web-services - Elasticsearch 抛出异常 circuit_break_exception