Skip to content

kketch/fortune-mongodb

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fortune MongoDB Adapter

Build Status npm Version License

This is a MongoDB adapter for Fortune. It uses the official Node.js MongoDB driver internally.

Usage

Install the fortune-mongodb package from npm:

$ npm install fortune-mongodb

Then use it with Fortune:

const fortune = require('fortune')
const mongodbAdapter = require('fortune-mongodb')

const store = fortune({ ... }, {
  adapter: [
    mongodbAdapter,
    {
      // options object, URL is mandatory.
      url: 'mongodb://localhost:27017/test'
    }
  ]
})

Options

Adapter options:

  • url: MongoDB connection URL. Required.
  • generateId: Generate the _id key on a new document. It must be a function that accepts one argument, the record type, and returns a unique string or number. Optional.
  • typeMap: An object that maps type names (keys) to MongoDB collection names (values). For example, { user: 'users' }.

Driver options (see the official documentation for details):

  • db: options that affect the DB instance.
  • replSet: options that modify the ReplicaSet topology connection behavior.
  • mongos: options that modify the Mongos topology connection behavior.
  • server: options that modify the Server topology connection behavior.

In addition to the constructor options, there is also the query function in the find method, which accepts the query object as an argument, and may either mutate or return the query object. This allows for arbitrary queries.

Internal Usage

The database client is exposed as the db property on the adapter instance, so for example, store.adapter.db lets you use the MongoDB driver directly.

License

This software is licensed under the MIT License.

About

MongoDB adapter for Fortune.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%