在 Sequelize 迁移中定义部分索引?

Sla*_* II 8 database migration node.js sequelize.js

我现在在模型定义中使用以下索引:

{
  name: 'unique_partner_id',
  unique: true,
  fields: ['partnerId'],
  where: {
    email: {
      $ne: null
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,我想使用迁移而不是同步,因此我尝试将此定义从模型移动到初始迁移文件。

有一种queryInterface.addIndex()方法,但是,我找不到任何相关文档。

那么,如何使用 定义部分索引queryInterface

PRS*_*PRS 6

我正在寻找如何在模型中执行此操作,而您的问题为我回答了这个问题。所以现在我来为你解答!这是对我有用的 up 函数:

up: function(queryInterface, Sequelize) {
  return queryInterface.addIndex(
    'tablename',
    ['column1', 'column2'],
    {
      name: 'indexname',
      where: {column3: {[Sequelize.Op.ne]: null}}
    }
  );
}
Run Code Online (Sandbox Code Playgroud)