考虑以下代码,其中“团队”是一个猫鼬模型。
var Team = mongoose.model( 'Team' );
Team.find({'GroupName':gname}, function (err, teams) {
// Some code
}
如何摆脱在 mongo 中选择时硬编码 'GroupName':gname 的硬编码?
一种方法是在模型上定义静态方法,这些方法公开封装这些细节的 DAO 接口:
Team.js
teamSchema.statics.findByGroupName = function (gname, cb) {
this.find({ GroupName: gname }, cb);
};
...
其他.js
Team.findByGroupName(gname, function (err, teams) {
// Some code
});