有没有办法避免使用Mongoose进行硬编码?

时间:2014-06-10 05:53:39

标签: node.js mongodb mongoose hardcode

考虑以下代码,其中'Team'是一个猫鼬模型。

var Team = mongoose.model( 'Team' );
Team.find({'GroupName':gname}, function (err, teams) {
   // Some code
}

如何在硬编码'GroupName'的情况下摆脱这种硬编码:在mongo中选择gname?

1 个答案:

答案 0 :(得分:2)

一种方法是在模型上定义static methods,公开一个封装了这些细节的DAO接口:

<强> Team.js

teamSchema.statics.findByGroupName = function (gname, cb) {
    this.find({ GroupName: gname }, cb);
};
...

<强> Other.js

Team.findByGroupName(gname, function (err, teams) {
   // Some code
});