flexxnn / sequelize-auto-migrations

Migration generator && runner for sequelize
MIT License
259 stars 165 forks source link

Doesn't generate field information #69

Open ghost opened 4 years ago

ghost commented 4 years ago

I have a model generated by Sequelize with the following information:

module.exports = (sequelize, DataTypes) => {
  const user = sequelize.define('test', {
    firstName: DataTypes.STRING,
    lastName: DataTypes.STRING,
    email: DataTypes.STRING,
    testField: DataTypes.STRING,
    anotherTest: DataTypes.STRING
  }, {});
  user.associate = function(models) {
    // associations can be defined here
  };
  return user;
};

Running makemigration generates the following:

'use strict';

var Sequelize = require('sequelize');

/**
 * Actions summary:
 *
 * createTable "users", deps: []
 *
 **/

var info = {
    "revision": 1,
    "name": "user",
    "created": "2019-10-20T04:47:04.496Z",
    "comment": ""
};

var migrationCommands = [{
    fn: "createTable",
    params: [
        "users",
        {

        },
        {}
    ]
}];

module.exports = {
    pos: 0,
    up: function(queryInterface, Sequelize)
    {
        var index = this.pos;
        return new Promise(function(resolve, reject) {
            function next() {
                if (index < migrationCommands.length)
                {
                    let command = migrationCommands[index];
                    console.log("[#"+index+"] execute: " + command.fn);
                    index++;
                    queryInterface[command.fn].apply(queryInterface, command.params).then(next, reject);
                }
                else
                    resolve();
            }
            next();
        });
    },
    info: info
};

Doesn't look like there is any code related to the fields. Running runmigration confirms this since it only creates the table with no fields in it.

Is it something I'm just doing wrong?

shawn246 commented 4 years ago

Same problem. Only table generated, no columns.

moda20 commented 4 years ago

This is still a problem

moda20 commented 4 years ago

if you can check, please check my pull request that fixes this specific issue, it is just that sequelize 5.x changed some attributes

mgbiedma commented 4 years ago

@flexxnn please accept @moda20 's PR, we are stuck in Sequelize 4.x

Naddyson commented 4 years ago

@moda20 I had an issue with your fix. I changed property path to models and it's worked fine with autogenerated models/index.js

This pull request fix this issue #75

Naddyson commented 4 years ago

If you faced this problem you can download my fork fixing this issue.

https://github.com/Naddyson/sequelize-auto-migrations

prabhatCH commented 3 years ago

This repo is dead and not being maintained anymore. Head over to https://github.com/MRVMV/sequelize-mig fork which is being actively maintained.