繁体   English   中英

如何在ES6类中扩展Sequelize 4 Model?

[英]How to extends Sequelize 4 Model in ES6 classes?

我想制作一个扩展Sequelize Model的类,如下所示

const Sequelize = require('sequelize');

class MyModel extends Sequelize.Model {
   constructor(){
     super()
   }

}

但是我需要知道如何为这个MyModel定义/初始化表名和属性。 我希望将Sequelize.Model的每种方法都转换为MyModel

你可以这样

定义模型=>

const Sequelize = require("sequelize");
class MyModel extends Sequelize.Model {
  static init(sequelize, DataTypes) {
    return super.init(
      {
        myField: DataTypes.STRING
      },
      { sequelize }
    );
  }
}

并定义关联

const Sequelize = require("sequelize");
class MyModel extends Sequelize.Model {
  static associate(models) {
    this.myAssociation = this.belongsTo(models.OtherModel);
    // or
    this.myAssociation = models.MyModel.belongsTo(models.OtherModel);
  }
}

您可以像这样使用它,有关更多详细信息,请访问博客。 我从这里用过的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM