Skip to content

eclass/sequelize-paginate

Folders and files

NameName
Last commit message
Last commit date
Apr 10, 2019
Apr 10, 2019
May 7, 2018
May 7, 2018
May 7, 2018
Sep 14, 2018
May 7, 2018
Dec 3, 2018
Apr 10, 2019
May 7, 2018
Dec 3, 2018
Apr 30, 2021
Mar 14, 2021
Mar 14, 2021
Mar 1, 2019
Mar 1, 2019

Repository files navigation

sequelize-paginate

npm version npm downloads Build Status devDependency Status

Sequelize model plugin for add paginate method

Installation

npm i sequelize-paginate

Use

// model.js
const sequelizePaginate = require('sequelize-paginate')

module.exports = (sequelize, DataTypes) => {
  const MyModel = sequelize.define(
    'MyModel',
    {
      name: { type: DataTypes.STRING(255) }
    }
  )
  sequelizePaginate.paginate(MyModel)
  return MyModel
}

// controller.js
const { Op } = db.sequelize
// Default page = 1 and paginate = 25
const { docs, pages, total } = await db.MyModel.paginate()
// Or with extra options
const options = {
  attributes: ['id', 'name'],
  page: 1, // Default 1
  paginate: 25, // Default 25
  order: [['name', 'DESC']],
  where: { name: { [Op.like]: `%elliot%` } }
}
const { docs, pages, total } = await db.MyModel.paginate(options)

NOTE: If options include limit or offset are ignored.

License

MIT