为多对多关系重新创build连接表

我没有看到为我的代码创build的交界表(UserEvents为:参加者)。 当我尝试使用event.setAttendees([user])将“Attendee”添加到事件中时,它将在用户表上设置EventId(从而使其成为一对多关系)

在同步日志logging期间,不会创build具有“userevents”相关名称的表

var User = db.import(__dirname + '/user'); var Event = db.import(__dirname + '/event'); Event.hasMany(User, { as: 'Attendees'}); User.hasMany(Event); db.sync({logging: console.log}).success(function() { logger.info('DB Initialization successful!'); createDefaultData() }).error(function(err) { logger.error('DB Initialization failed!', err); }); var createDefaultData = function() { User.create({email:"test@test.com", firstName: "tolga", lastName: "ekmen", password: "qwer", location: "13424"}); } 

当使用别名( { as: 'Attendees'} )时,你必须通过指定through来告诉sequelize你想要一个连接表,它可以是一个string或一个模型:

 Event.hasMany(User, { as: 'Attendees', through: 'user_events' }); User.hasMany(Event, { , through: 'user_events' });