2017-05-22 35 views
2

多个命令我有以下迁移文件,但我得到这个错误:运行使用sequelize CLI

TypeError: queryInterface.addConstraint is not a function

任何人都可以见识一下这个应该怎么写?

'use strict'; 
const uuidV4 = require('uuid/v4'); 

module.exports = { 
    up: function (queryInterface, Sequelize) { 
    return queryInterface.createTable('app_users', { 
     id: { 
     type: Sequelize.UUID, 
     primaryKey: true, 
     defaultValue: function() { 
      return uuidV4() 
     } 
     }, 
     createdAt: { 
     type: Sequelize.DATE, 
     allowNull: false 
     }, 
     updatedAt: { 
     type: Sequelize.DATE 
     }, 
     email: { 
     type: Sequelize.STRING, 
     allowNull: false 
     }, 
     disabled: { 
     type: Sequelize.BOOLEAN, 
     defaultValue: false, 
     allowNull: false 
     } 
    }).then(function() { 
     return queryInterface.addConstraint('app_users', ['email'], { 
     type: 'unique', 
     name: 'unique_email' 
     }); 
    }) 
    }, 

    down: function (queryInterface, Sequelize) { 
    return queryInterface.dropTable('app_users'); 
    } 
}; 

Sequelize [节点:7.10.0,CLI:2.7.0,ORM:4.0.0-2]

+0

'console.log(queryInterface)'在有问题的'then()'里输出了什么? –

回答

1

它不跟你链中的查询的方式做。我遇到了同样的问题,并询问了续集的松弛组,结果发现addConstraint将在v4中发布。尽管我认为我们可能都在文档中看到过它,并认为它可用。

相关问题