-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdatabase.js
43 lines (32 loc) · 1.07 KB
/
database.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/**
* database.js
*
* Database setup and models
*/
var mongoose = require('mongoose');
var autoIncrement = require('mongoose-plugin-autoinc');
var logs = require('./logs');
mongoose.Promise = require('bluebird');
mongoose.connect(process.env.MONGODB_URI || 'mongodb://localhost', {
useMongoClient: true,
});
var db = mongoose.connection;
var ScenarioSchema = mongoose.Schema(require('./models/Scenario'));
var EventSchema = mongoose.Schema(require('./models/Event'));
var KindSchema = mongoose.Schema(require('./models/Kind'));
ScenarioSchema.plugin(autoIncrement.plugin, 'Scenario');
EventSchema.plugin(autoIncrement.plugin, 'Event');
KindSchema.plugin(autoIncrement.plugin, 'Kind');
var Scenario = mongoose.model('Scenario', ScenarioSchema);
var Event = mongoose.model('Event', EventSchema);
var Kind = mongoose.model('Kind', KindSchema);
var database = {
'Scenario': Scenario,
'Event': Event,
'Kind': Kind
};
db.on('err', console.error.bind(console, 'console error:'));
db.once('open', function() {
logs.always('Mongodb connected.');
});
module.exports = database;