1.0.0 • Published 8 years ago

express-database v1.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
8 years ago

express-database

travis package version nodejs version license downloads

Usage

const mysql = require('express-database-mysql')
const app = express()

// define here routes without needed database connection
// ex: static routes, index page, etw.

// use the database middleware
app.use(database({
  db: mysql("mysql://foo:bar@example.com/db")
})

app.get("/api/foobar", function(req, res, next) {
  const { query, set, get, connect } = req.database
  
  query('show databases').then([rows] => rows)  // our abstract api
  connect.do.some() // yours unsafe raw connector
  
  // ...
  
  // the database connection will be closed automatically 
  res.render('page')
})

API

req.database

  • req.database - reference to connection to your database.
  • req.database.connect - reference to raw connection to your database
  • req.database.close - close connection to database, called automatically.

options

  • options.db - connection's constructor; it should have method open that return Promise with connection.

Connectors

Each connector should have connect property and method close(). Is's required api. Connectors can have any count of other helper methods. Each method should return Promise. Property connect should hold reference to raw api. See express-database-mysql as example.

License

MIT, 2016 (c) Dmitry Tsvettsikh