我正在使用一些mongoose模型instance methods来尝试封装一些业务逻辑,而不是在我的应用程序中传播。一个例子:
MySchema.methods.doSomethingAndUpdateCount = function (somedata) {
//Do something to model here using somedata
this.someCount ++;
this.save();
};
我今天一直在看这个,但我不确定这是不是很好的做法。首先,它并没有真正给应用程序的一部分使用这种方法来处理错误。也许问题是this.save();
- 也许这不应该在实例方法中,而是由方法的使用者调用。所以......
this.save();
,还是在使用代码时执行此操作? 答案 0 :(得分:5)
一般概念很好,但是您的实例方法应该支持一个回调参数,您可以将其保存为this.save(callback);
,以便可以通知客户端错误。