Node.js 从不同的模式调用Mongoose模式方法,这是一个好的实践吗?

Node.js 从不同的模式调用Mongoose模式方法,这是一个好的实践吗?,node.js,mongodb,testing,mongoose,Node.js,Mongodb,Testing,Mongoose,我知道这样做是可能的,但我的问题是,是否有充分的理由不这样做,还是有更好的办法?我觉得它可以使代码更容易理解,并可能使测试更容易,但这就是我所能做到的 示例代码: postSchema.methods.publishPost = function(data, cb) { var self = this, options = options || {}; mongoose.model('Version').findById(data.version).exec(function(

我知道这样做是可能的,但我的问题是,是否有充分的理由不这样做,还是有更好的办法?我觉得它可以使代码更容易理解,并可能使测试更容易,但这就是我所能做到的

示例代码:

postSchema.methods.publishPost = function(data, cb) {
  var self = this,
    options = options || {};

  mongoose.model('Version').findById(data.version).exec(function(err, version) {
    if (err) return cb(err);

    mongoose.model('Translation').findTranslatedVersion(version, function(err, translation) {
      if(err) return cb(err);

      publisher.publish(self, translation ? translation : version, function(err, published) {
        if (err) return cb(err);
        self.save(published);
      });
    });
  });
}