DataTypes.ARRAY(DataTypes.STRING) 上的 Sequelize 错误

Ati*_*Zia 4 javascript mysql node.js sequelize.js

我是 NodeJs 开发的新手,我使用 NodeJs 与 mysql 和 Sequelize 来创建具有这些属性的 Batch 模型。

const Batch = sequelize.define(
  "Batch",
  {
    title: { type: DataTypes.STRING, allowNull: false },
    studentIds: { type: DataTypes.STRING },
    teacherId: { type: DataTypes.STRING, allowNull: true }
  },
  {
    timestamps: false
  }
);
Run Code Online (Sandbox Code Playgroud)

在异步方法调用上它工作正常。

Batch.sync().then((res) => {
  console.log("Batch model sync : ", Batch === sequelize.models.Batch);
});
Run Code Online (Sandbox Code Playgroud)

但我需要改变

studentIds: { type: DataTypes.ARRAY(DataTypes.STRING)}
Run Code Online (Sandbox Code Playgroud)

每当我进行此更改时都会出现错误

在此输入图像描述

我正在使用节点 14.5.0 MySql 8.0.21 和 Sequelize 6.3.4

Edu*_*ard 8

DataTypes.ARRAY不适用于Mysql,仅适用于postgres

查看官方文档:https://sequelize.org/api/v6/class/src/data-types.js~array