gpt4 book ai didi

node.js - 基于 Mongoose 中另外两个字段的第三个字段的计算

转载 作者:可可西里 更新时间:2023-11-01 10:00:12 25 4
gpt4 key购买 nike

我在 Mongoose 模型上有 2 个字段:totalAttempts 和 totalRight。我打算根据它们计算准确度。

totalAttempts: {
type: Number,
default: 1
},
totalRight: {
type: Number,
default: 1
}

这就是我所做的[它不起作用]

 accuracy:{
type:Number,
required:function() {return (this.totalRight/this.totalAttempts*100).toFixed(2)}
}

此外,如果我不为准确性设置默认值,我会收到错误消息:

ERROR; While creating new question ..ValidationError: Path `accuracy` is require                      d.

events.js:163

完成此任务的正确方法是什么?我已经有了一个可行的解决方案,可以在每次用户请求该模型时获取 totalAttempts 和 totalRight。但我想保存该计算并将信息存储在我的数据库中。

最佳答案

预存是正确的方法。将其添加到您的架构中。

ModelSchema
.pre('save', function(next){
this.accuracy = this.totalRight/this.totalAttempts*100).toFixed(2)
next();
});

accuracy 定义更改为:

accuracy: {
type: Number
}

关于node.js - 基于 Mongoose 中另外两个字段的第三个字段的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43955987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com