0.0.2 • Published 7 years ago

mvc-express-sequelize v0.0.2

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

mvc-express-sequelize

This is a Sequelize model loader for mvc-express.

Usage

const config = require('../config');

const mvc = require('mvc-express');
const modelLoader = require('mvc-express-sequelize')(config);


mvc.boot({
    root: __dirname,
    modelLoader
})

Config

The config object should include the following values for the current environment.

See the Sequelize docs for more info.

KeyDescription
usernameThe DB username
passwordThe DB password for the username
databaseThe DB name
hostThe host to be used
dialectThe SQL DB type to be used by Sequelize
poolOptional connection pool describtion
storageFor SQLLite only

If you want Sequelize to use process.env to extract the configs, then use { use_env_variable : true }.

Creating models

Each model file will receive as arguments: sequelize, DataType, services, and options.

Models are attached to the models object using the Sequelize model name.

Here is a sample model:

// app/models/pages.model.js
// this model will be available as models.Pages
'use strict';

module.exports = function(sequelize, DataTypes, services, options) {
  var Pages = sequelize.define('Pages', {
      id: {
          allowNull: false,
          autoIncrement: true,
          primaryKey: true,
          type: DataTypes.INTEGER
      },
      title: {
          type: DataTypes.STRING
      },
      slug: {
          type: DataTypes.STRING
      },
      content: {
          type: DataTypes.TEXT
      },
      createdAt: {
          allowNull: false,
          type: DataTypes.DATE,
          defaultValue: DataTypes.NOW
      },
      updatedAt: {
          allowNull: false,
          type: DataTypes.DATE
      }
  }, {
    classMethods: {
      associate: function(models) {
        // associations can be defined here
      }
    }
  });
  return Pages;
};

CLI

Use the Sequelize CLI for migrations and seeds.

0.0.2

7 years ago

0.0.1

7 years ago

0.0.0

7 years ago