yapi/server/utils/db.js

46 lines
932 B
JavaScript
Raw Normal View History

2017-07-03 16:16:05 +08:00
import mongoose from 'mongoose'
import yapi from '../yapi.js'
import autoIncrement from 'mongoose-auto-increment'
2017-07-03 16:16:05 +08:00
function model(model, schema){
if(schema instanceof mongoose.Schema === false){
schema = new mongoose.Schema(schema);
}
schema.set('autoIndex', false);
return yapi.connect.model(model, schema, model)
}
2017-07-03 16:16:05 +08:00
function connect(){
2017-07-03 16:16:05 +08:00
mongoose.Promise = global.Promise;
let config = yapi.WEBCONFIG;
2017-07-05 17:59:53 +08:00
2017-07-17 13:47:46 +08:00
let db = mongoose.connect(`mongodb://${config.db.servername}:${config.db.port}/${config.db.DATABASE}`, {
user: config.db.user,
pass: config.db.pass
});
2017-07-03 16:16:05 +08:00
db.then(function (res) {
yapi.commons.log('mongodb load success...')
2017-07-03 16:16:05 +08:00
}, function (err) {
yapi.commons.log(err, 'Mongo connect error');
2017-07-03 16:16:05 +08:00
})
autoIncrement.initialize(db);
2017-07-03 16:16:05 +08:00
return db;
}
yapi.db = model;
module.exports = {
model: model,
connect: connect
};