作者:短工邦技术部 - 陈文哲
经过《nodejs MODEL层 封装(一)》的封装,MODEL层变得简洁了,但是所有MODEL层的方法都一样,所以显而易见的,下一步封装就是把所有相同的代码封装到BaseMODEL,然后自定义的MODEL“继承”自BaseMODEL就行了。
在MODEL目录下,新建BaseMODEL.js,代码如下
exports.statics = {
//KeyValue是一个JSON对象,可以根据需求自由传入
findByKeyValue : function( KeyValue, data ) {
return this.find(KeyValue).exec( data );
},
Find : function( query, data ) {
if(!query.limit){
query.limit = 1000;
}
if(!query.order){
query.order = "-createdAt";
}
if(!query.include){
query.include = "";
}
return this.find(query.where).populate(query.include).limit(query.limit).sort(query.order).exec( data );
},
Update : function( query,data){
query.data.updatedAt = Date.now(); //所有更新操作,都更新系统updatedAt字段
r