2017-05-22 32 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中發佈。儘管我認爲我們可能都在文檔中看到過它,並認爲它可用。

相關問題