2016-09-21 1 views
1

Я две модели:Мои модели БД с использованием Sequelize не делает миграцию

user.js

'use strict' 
 
module.exports = function(sequelize, DataTypes) { 
 
    var User = sequelize.define('User', { 
 
    gid: { 
 
     type: DataTypes.INTEGER, 
 
     allowNull: false, 
 
     primaryKey: true, 
 
     autoIncrement: true 
 
    }, 
 
    email: { 
 
     type: DataTypes.STRING, 
 
     allowNull: false 
 
    }, 
 
    password: { 
 
     type: DataTypes.STRING, 
 
     allowNull: false 
 
    }, 
 
    newsletters: { 
 
     type: 'NUMERIC', 
 
     allowNull: false, 
 
     defaultValue: '1' 
 
    }, 
 
    status: { 
 
     type: 'NUMERIC', 
 
     allowNull: false, 
 
     defaultValue: '1' 
 
    }, 
 
    date_verified: { 
 
     type: DataTypes.TIME, 
 
     allowNull: true 
 
    }, 
 
    date_created: { 
 
     type: DataTypes.TIME, 
 
     allowNull: false, 
 
     defaultValue: sequelize.fn('now') 
 
    }, 
 
    date_updated: { 
 
     type: DataTypes.TIME, 
 
     allowNull: false, 
 
     defaultValue: sequelize.fn('now') 
 
    } 
 
    },{ 
 
    tableName: 'user' 
 
    },{ 
 
    classMethods:{ 
 
     associate: function(models){ 
 
     User.belongsTo(models.User); 
 
     } 
 
    } 
 
    }); 
 

 
    User.schema("security"); 
 

 
    return User; 
 
};

role.js

'use strict' 
 
module.exports = function(sequelize, DataTypes) { 
 
    var Role = sequelize.define('Role', { 
 
    gid: { 
 
     type: DataTypes.INTEGER, 
 
     allowNull: false, 
 
     primaryKey: true, 
 
     autoIncrement: true 
 
    }, 
 
    name: { 
 
     type: DataTypes.STRING, 
 
     allowNull: false 
 
    }, 
 
    status: { 
 
     type: 'NUMERIC', 
 
     allowNull: false, 
 
     defaultValue: '1' 
 
    }, 
 
    date_created: { 
 
     type: DataTypes.TIME, 
 
     allowNull: false, 
 
     defaultValue: sequelize.fn('now') 
 
    }, 
 
    date_updated: { 
 
     type: DataTypes.TIME, 
 
     allowNull: false, 
 
     defaultValue: sequelize.fn('now') 
 
    } 
 
    },{ 
 
    tableName: 'role' 
 
    },{ 
 
    classMethods:{ 
 
     associate: function(models){ 
 
     Role.hasMany(models.User); 
 
     } 
 
    } 
 
    }); 
 

 
    Role.schema("security"); 
 

 
    return Role; 
 
};

И index.js в одних и тех же "модели" папку, которая генерируется автоматически Sequelize.

Я только изменил config.json с моими переменными соединения и подключился успешно.

Но, когда я положил в консоли

node_modules/.bin/sequelize db:migrate 

показывает мне это:

Sequelize [Node: 4.4.4, CLI: 2.1.0, ORM: 3.12.2, pg: ^4.4.3] 

Loaded configuration file "config\config.json". 
Using environment "development". 
Using gulpfile c:\Users\Ulises\MVO-app\server\node_modules\sequelize-cli\lib\gulpfile.js 
Starting 'db:migrate'... 
Finished 'db:migrate' after 180 ms 
No migrations were executed, database schema was already up to date. 

И в моей БД не создают модели

ответ

2

Пожалуйста, проверьте в вашей базе данных, таблицы SequelizeMeta, и удалите запись, соответствующее имени с миграцией файла. Sequelize выполнит миграцию журнала в эту таблицу, а при повторной миграции снова не сможет повторно запустить файл миграции.

 Смежные вопросы

  • Нет связанных вопросов^_^