Notorious Public Menace

    hapi-mongoose

    2.0.0 • Public • Published

    hapi-mongoose

    Circle CI

    Stories in Ready

    Hapi Plugin to handle Mongoose handshake and initial setup

    Install

    npm install --save hapi-mongoose
    

    Requirements

    • Mongoose
    npm install --save mongoose
    

    Usage

    const options = {
        promises: 'native',
        uri: 'mongodb://localhost:27017'
    };
     
    const server = new Hapi.Server();
     
    await server.register({
        plugin: require('hapi-mongoose'),
        options: options
    });
     
    const db = server.plugins['hapi-mongoose'].connection;
     
    const mongoose = server.plugins['hapi-mongoose'].lib;

    Example

    const db = server.plugins['hapi-mongoose'].connection; // Get the current connection for this server instance
    const mongoose = server.plugins['hapi-mongoose'].lib;
    const Schema = mongoose.Schema;
     
    const tankSchema = new Schema({
      //tank props
    });
     
    const Tank = db.model('Tank', tankSchema);
     
    const small = new Tank({ size: 'small' });
     
    small.save(function (err) {
      if (err) return handleError(err);
      // saved!
    });

    It is important to use server.plugins['hapi-mongoose'].lib instead of require('mongoose') due to this issue.

    Options

    • promises - Choose your promises implementation. Valid string options are 'bluebird', 'native' (or 'es6'). Any other value will result in the use of mongoose's built in 'mpromise'. Read More
    • uri - MongoDB uri
    • mongooseOptions - A javascript opbject with mongoose connection options. Read More

    Install

    npm i hapi-mongoose

    DownloadsWeekly Downloads

    300

    Version

    2.0.0

    License

    MIT

    Unpacked Size

    80.8 kB

    Total Files

    16

    Last publish

    Collaborators

    • asilluron