2017-07-03 16:16:05 +08:00
|
|
|
import mongoose from 'mongoose'
|
2017-07-04 16:43:07 +08:00
|
|
|
import yapi from '../yapi.js'
|
2017-07-03 16:16:05 +08:00
|
|
|
|
2017-07-04 16:43:07 +08:00
|
|
|
function model(model, schema){
|
|
|
|
return mongoose.model(model, schema, model)
|
|
|
|
}
|
2017-07-03 16:16:05 +08:00
|
|
|
|
2017-07-04 16:43:07 +08:00
|
|
|
function connect(){
|
2017-07-03 16:16:05 +08:00
|
|
|
mongoose.Promise = global.Promise;
|
2017-07-04 16:43:07 +08:00
|
|
|
let config = yapi.WEBCONFIG;
|
|
|
|
|
2017-07-03 16:16:05 +08:00
|
|
|
let db = mongoose.connect(`mongodb://${config.db.servername}:${config.db.port}/${config.db.DATABASE}`);
|
|
|
|
|
|
|
|
db.then(function (res) {
|
2017-07-04 16:43:07 +08:00
|
|
|
yapi.commons.log('mongodb load success...')
|
2017-07-03 16:16:05 +08:00
|
|
|
}, function (err) {
|
2017-07-04 16:43:07 +08:00
|
|
|
yapi.commons.log(err, 'Mongo connect error');
|
2017-07-03 16:16:05 +08:00
|
|
|
})
|
|
|
|
|
2017-07-04 16:43:07 +08:00
|
|
|
|
2017-07-03 16:16:05 +08:00
|
|
|
checkDatabase();
|
|
|
|
return db;
|
|
|
|
}
|
|
|
|
|
|
|
|
function checkDatabase(){
|
2017-07-04 16:43:07 +08:00
|
|
|
let exist = yapi.commons.fileExist(yapi.path.join(yapi.WEBROOT_RUNTIME, 'init.lock'))
|
2017-07-03 16:16:05 +08:00
|
|
|
if(!exist){
|
2017-07-04 16:43:07 +08:00
|
|
|
yapi.commons.log('lock is not exist')
|
2017-07-03 16:16:05 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-07-04 16:43:07 +08:00
|
|
|
yapi.db = model;
|
|
|
|
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
model: model,
|
|
|
|
connect: connect
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|