Javascript mongoose中的最大数验证
我会尽力描述我的问题 我创建了一个模式,Mongoose试图设置如下最大值:Javascript mongoose中的最大数验证,javascript,node.js,mongoose,max,increment,Javascript,Node.js,Mongoose,Max,Increment,我会尽力描述我的问题 我创建了一个模式,Mongoose试图设置如下最大值: const mongoose=require(“mongoose”); const inventorySchema=new mongoose.Schema({ userID:{type:String,require:true,unique:true}, 法力:{类型:数字,默认值:0,最大值:100,最小值:0}, 鹤嘴锄:{类型:编号,默认值:0}, 剑:{type:Number,默认值:0}, stone:{typ
const mongoose=require(“mongoose”);
const inventorySchema=new mongoose.Schema({
userID:{type:String,require:true,unique:true},
法力:{类型:数字,默认值:0,最大值:100,最小值:0},
鹤嘴锄:{类型:编号,默认值:0},
剑:{type:Number,默认值:0},
stone:{type:Number,默认值:0},
熨斗:{type:Number,默认值:0},
金色:{type:Number,默认值:0},
});
const model=mongoose.model(“InventoryModels”,inventorySchema);
module.exports=模型;
我想做的第二件事是用以下代码每60秒增加1到我的“法力”变量:
const manadd=async()=>wait inventoryModel.updateName({},
{
$inc:{
法力:1
}
}
);
设置间隔(manaAdd,30000);
但在任何情况下,我的法力变量都会超过100。。。
如果你能帮忙,我将非常感激你
来自Mongoose文件的ZartaX0O3
在上面的示例中,您了解了文档验证。Mongoose还支持update()、updateOne()、updateMany()和findOneAndUpdate()操作的验证。默认情况下,更新验证器处于关闭状态-您需要指定runValidators选项
因此,您必须像下面的代码一样将runValidater设置为true
const opts = { runValidators: true };
Toy.updateOne({}, { color: 'not a color' }, opts, function(err) {
assert.equal(err.errors.color.message,
'Invalid color');
});
代码没有任何变化
const opts={runValidators:true};
const manaAdd=async()=>wait inventoryModel.updateMany({},{$inc:{mana:1},opts);
设置间隔(manaAdd,30000);
Hi尝试这样做,但没有任何变化“法力”超过100。。。