sequelize-interval-postgres

Add support for INTERVAL data-type for PostgreSQL in Sequelize

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
sequelize-interval-postgres
1.0.04 years ago4 years agoMinified + gzip package size for sequelize-interval-postgres in KB

Readme

sequelize-interval-postgres
NPM version
Add support for INTERVAL data-type for PostgreSQL in Sequelize.

Motivation

Read:
  • https://github.com/sequelize/sequelize/issues/2572
  • https://github.com/sequelize/sequelize/issues/4900

Install

npm install --save sequelize-interval-postgres

Use to define models

models/my_model.js
const withInterval = require('sequelize-interval-postgres');

module.exports = function (sequelize, SequelizeDataTypes) {
  const DataTypes = withInterval(SequelizeDataTypes);

  const MyModel = sequelize.define('myModel', {
    someIntervalField: {
      type: DataTypes.INTERVAL
    },

    // ...
  });

  // ...

  return MyModel;
};

Use in migrations

migrations/<timestamp>-add-some-interval-field-to-my-model.js
const withInterval = require('sequelize-interval-postgres');

module.exports = {
  up: function (queryInterface, SequelizeBase) {
    const Sequelize = withInterval(SequelizeBase);

    return queryInterface.addColumn('myModel', 'someIntervalField', {
      type: Sequelize.INTERVAL
    });
  },

  // ...
};