在迁移中执行原始查询-Sequelize 3.30

时间:2018-08-21 13:42:54

标签: node.js postgresql sequelize.js

我想在迁移updown函数中执行原始查询。

当我尝试执行以下操作时:Sequelize.query上写着ERROR: Sequelize.query is not a function

这是我的迁移框架文件:

'use strict';

module.exports = {

  up: (queryInterface, Sequelize, migration) => {
     return Sequelize.query(...);   //ERROR: Sequelize.query is not a Function
  },

  down: (queryInterface, Sequelize) => {
     return Sequelize.query(...);  //ERROR: Sequelize.query is not a Function
  }

};

1 个答案:

答案 0 :(得分:2)

您要寻找的query()方法是实例而不是类方法。它存在于Sequelize 实例上,而不存在于类本身上。

在迁移中,您可以通过提供的queryInterface对象以queryInterface.sequelize的身份访问实例。

因此您的迁移应如下所示:

'use strict';

module.exports = {

  up: (queryInterface, Sequelize, migration) => {
     return queryInterface.sequelize.query(...);
  },

  down: (queryInterface, Sequelize) => {
     return queryInterface.sequelize.query(...);
  }

};