nodejs 컨트롤 러 층 패키지
2829 단어 Parse
MODEL 층 을 봉 한 후에 우 리 는 어떤 시 계 를 조작 하려 고 하 는 지, 대응 하 는 MODEL 변 수 를 정의 하면 된다.그래도 귀 찮 습 니 다. 한 업무 에서 여러 장의 표를 조작 해 야 할 수도 있 습 니 다. db 변 수 를 정의 할 방법 이 없 습 니까? 제 가 데 이 터 를 어떻게 조작 하고 싶 으 면 데 이 터 를 어떻게 조작 합 니까?
안전성 등 을 떠 나 답 은 있 고 간단 하 다.봉 인 된 디 렉 터 리 구 조 를 먼저 보 세 요.
BaseMODEL.js
exports.statics = {
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();
return this.update({_id:query._id},query.data).exec(data);
}
};
UserMODEL.js
var Schema = require('mongoose').Schema;
var MODEL = Schema({
UserName: String,
Password: String
createdAt:{
type:Date,
default:Date.now()
},
updatedAt:{
type:Date,
default:Date.now()
}
}, {collection: "User"});
// MODEL
var BaseMODEL = require("./BaseMODEL");
MODEL.statics = BaseMODEL.statics;
/* global db */
module.exports = db.model('UserMODEL', MODEL);
oData.js
exports.find = function(inputData,callback){
var MODEL;
if(inputData.table == "User"){
MODEL = require("../MODEL/UserMODEL");
}
//else if
if(MODEL){
MODEL.Find({
"where":inputData.where,
"include":inputData.include,
"limit":inputData.limit,
"skip":inputData.skip
},function(err,data){
//
callback(err,data)
});
}
}
NormalController.js
var db = require("./oData");
exports.index = function(req, res) {
db.find({
"table":"User",
"where":{
"Type":"Admin"
}
},function(err,data){
console.log(data);
//
db.find({
"table":"User",
"where":{
"Type":"User"
}
},function(err,data){
console.log(data);
//
res.render('index',data);
});
});
}
지금 업무 쓰 는 게 훨씬 간단 하지 않 아 요?하지만 계속 확장 할 수 있 을까요?빨리 확장 하면 프레임 이 될 것 같은 데..
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Cocos2d-x로 Parse.com에 로그인Parse.com은 모바일 앱에 백엔드를 제공하는 BaaS 중 하나로 로그인 및 데이터 저장 등 서버 측에서 처리해야 하는 기능을 쉽게 추가할 수 있습니다. 이것을 Cocos2d-x에서 사용해 보겠습니다. 샘플 프로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.