2.0.2 • Published 5 years ago

boilerpress-route-sequelize v2.0.2

Weekly downloads
3
License
ISC
Repository
github
Last release
5 years ago

boilerpress-route-sequelize

Boilerpress route resources for sequelize

npm install --save boilerpress-route-sequelize

Restful API Design

Creates restful routes based on your sequelize models.

Data Structure:

{
  prefix: '/api/v1',
  models, // The object of all sequelize models
  use(req, res, next) {

    // Put any middleware requirements you need here
    if (
      req.headers['x-service-token'] &&
      req.headers['x-service-token'] === 'abc123'
    ) {
      return next();
    }

    // Lock down any records that belong to the logged in user
    if (req.bp.childModelName) {
      req.bp.childSequelizeOptions.where = {
        ...get(req, 'bp.childSequelizeOptions.where', {}),
        [req.bp.childModelName === 'accounts' ? 'id' : 'accountId']: req.user.account.id,
      };
    } else {
      req.bp.sequelizeOptions.where = {
        ...get(req, 'bp.sequelizeOptions.where', {}),
        [req.bp.modelName === 'accounts' ? 'id' : 'accountId']: req.user.account.id,
      };
    }
    return next();
  },
}

Example url

http://localhost:3000/api/v1/users?attributes=id,accountId&where={"id":3}&order=[["id", "desc"]]
2.0.2

5 years ago

2.0.1

5 years ago

2.0.0

5 years ago

1.1.0

6 years ago

1.0.0

6 years ago