Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mongoose模型:计算并自动更新平均评级_Javascript_Node.js_Mongoose - Fatal编程技术网

Javascript Mongoose模型:计算并自动更新平均评级

Javascript Mongoose模型:计算并自动更新平均评级,javascript,node.js,mongoose,Javascript,Node.js,Mongoose,我有一个猫鼬电影模型,这有一个评分键,是一个数字数组。我正在寻找某种可以添加到此模式的方法,当我向数组添加新评级时,该方法会自动计算平均评级。有人知道这是怎么做到的吗 var mongoose = require('mongoose'); var Schema = mongoose.Schema; var schema = new Schema({ title: String, actors: String, director: String, length:

我有一个猫鼬电影模型,这有一个评分键,是一个数字数组。我正在寻找某种可以添加到此模式的方法,当我向数组添加新评级时,该方法会自动计算平均评级。有人知道这是怎么做到的吗

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var schema = new Schema({
    title: String,
    actors: String,
    director: String,
    length: Number,
    description: String,
    genre: String,
    country: String,
    year: Number,
    ratings: [],
    averageRating: Number,
    reviews: [{type: Schema.Types.ObjectId, ref: 'Review'}],
    pictureUrl: String
}, { usePushEach: true });

module.exports = mongoose.model('Movie', schema);

您可以在架构上定义一个属性来执行两件事:向
ratings
属性添加评级,然后更新
averageRatings
属性。然后,您将调用此方法,而不是直接更新
ratings
属性。

您可以在架构上定义一个属性来执行两件事:向
ratings
属性添加一个评级,然后更新
averageRatings
属性。然后调用此方法,而不是直接更新
ratings
属性。

getter/setters
maybe?
getter/setters
maybe?