An hapi plugin to handle Mongoose handshake and initial setup.
npm install --save hapi-mongoose
- Mongoose
npm install --save mongoose
constoptions={promises: 'native',uri: 'mongodb://localhost:27017'};constserver=newHapi.Server();awaitserver.register({plugin: require('hapi-mongoose'),options: options});constdb=server.plugins['hapi-mongoose'].connection;constmongoose=server.plugins['hapi-mongoose'].lib;constdb=server.plugins['hapi-mongoose'].connection;// Get the current connection for this server instanceconstmongoose=server.plugins['hapi-mongoose'].lib;constSchema=mongoose.Schema;consttankSchema=newSchema({// Tank properties});constTank=db.model('Tank',tankSchema);constsmall=newTank({size: 'small'});small.save(function(err){if(err)returnhandleError(err);// Saved!});It is important to use server.plugins['hapi-mongoose'].lib instead of require('mongoose') due to this issue.
promises- Choose your promises implementation. Valid string options arebluebird,native(ores6). Any other value will result in the use of Mongoose's built-inmpromise(read more).uri- A MongoDB connection string.mongooseOptions- A JavaScript object with Mongoose connection options.