如何设计需要调用save()的Mongoose方法?

时间:2015-12-03 18:36:55

标签: node.js mongodb mongoose

var SampleModelSchema = new mongoose.Schema({
    values: [Number]
});

SampleModelSchema.methods.addValue = function(value){
    this.values.push(value);
    return this.save();
};

var SampleModel = mongoose.model('SampleModel', SampleModelSchema);

我想在我的mongoose架构中添加方法addValue。我在这里面临两难困境。我可以把' this.save()'在方法本身,或者我可以让这个方法的调用者调用save。

如果有人使用此模型,我不希望他们必须记住调用保存。但是如果在循环中调用此方法,则实现非常糟糕。

for(var k=0;k<10;k++){
    mySampleModel.addValue(k);
}

这将调用保存10次,这对性能不利。

最好不要将save()放在一个可以连续多次调用的方法中并将保存责任委托给调用者吗?

谢谢!

0 个答案:

没有答案