最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何在ES6课程中扩展Sequelize 4模型?

IT培训 admin 6浏览 0评论

如何在ES6课程中扩展Sequelize 4模型?

我想创建一个扩展Sequelize Model的类,如下所示

const Sequelize = require('sequelize');

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

}

但是我需要知道如何为这个MyModel定义/ init表名和属性。我希望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);
  }
}

您可以像这样使用它来获取更多详细信息,请参阅this博客。我从这里用过它

如何在ES6课程中扩展Sequelize 4模型?

我想创建一个扩展Sequelize Model的类,如下所示

const Sequelize = require('sequelize');

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

}

但是我需要知道如何为这个MyModel定义/ init表名和属性。我希望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);
  }
}

您可以像这样使用它来获取更多详细信息,请参阅this博客。我从这里用过它

发布评论

评论列表 (0)

  1. 暂无评论