Sequelize.js 如何在sequelize中创建hasMany关联

Sequelize.js 如何在sequelize中创建hasMany关联,sequelize.js,Sequelize.js,我想在offerset表中添加offerzone表作为外键。使用sequelize和below模型是用angularjs编写的 module.exports = function(sequelize, DataTypes) { let offerzone = sequelize.define('offerzone', { title: DataTypes.STRING, moid: DataTypes.INTEGER, seoTandC: DataTypes.STRING, isActive:

我想在offerset表中添加offerzone表作为外键。使用sequelize和below模型是用angularjs编写的

module.exports = function(sequelize, DataTypes) {
let offerzone = sequelize.define('offerzone', {
title: DataTypes.STRING,
moid: DataTypes.INTEGER,
seoTandC: DataTypes.STRING,
isActive: DataTypes.BOOLEAN,
set: DataTypes.ARRAY(DataTypes.STRING),
isDeleted: DataTypes.BOOLEAN
}, {
classMethods: {
  associate: function(models) {
    offerzone.belongsToMany(models.offerset, {
      through: 'models.offerset'
      foreign-key: 'offerzone'
      as: 'offerset'
    });

    // associations can be defined here
  }
}
});
return offerzone;
};

要在sequelize中定义hasMany关联,如果您想拥有例如视频hasMany注释,请执行以下步骤

在视频中,您将拥有类似的功能视频模型

module.exports = function (sequelize, DataTypes) {
    var Video = sequelize.define("Video", {
         author: {
            type: DataTypes.STRING,
            allowNull: false
        }
    }, {
        classMethods: {
            associate: function (models) {
                Video.hasMany(models.Comment, {foreignKey: 'videoid', onDelete: 'cascade', hooks: true});
            }
        }
    });
    return Video;
};
评论模式将是:

module.exports = function (sequelize, DataTypes) {
    var Comment = sequelize.define("Comment", {
        commentary: {
            type: DataTypes.TEXT,
            allowNull: false
        }
    }, {
        classMethods: {
            associate: function (models) {
                Comment.belongsTo(models.Video, {foreignKey: 'videoid', allowNull: false});
            }
        }
    });
    return Comment;
};
onDelete部分:'cascade',hooks:true意味着如果删除视频,评论也将被删除