2017-01-09 2 views
0

Ich habe diese VerbändeDoppel Verein in Sequelize Modell

// Tasks.js 
sequelize.models.tasks.belongsTo(sequelize.models.users, { 
    foreignKey: { 
     type: DataTypes.INTEGER, 
     field: 'ASSIGNEE', 
     allowNull: true 
    }, 
    as: 'assignee' 
}); 

sequelize.models.tasks.belongsTo(sequelize.models.users, { 
    foreignKey: { 
     type: DataTypes.INTEGER, 
     field: 'REPORTER', 
     allowNull: true 
    }, 
    as: 'reporter' 
}); 

// Users.js 
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'assignee' }); 
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'reporter' }); 

Diese Assoziation erstellen zwei FK: ASSIGNEE und REPORTER. Aber es erstellt auch einen anderen: userId. Ich weiß, dass "userId" FK ist Standard, aber ich will es nicht. Ich möchte nur diese zwei, die ich in meinen Assoziationen beschrieben habe.

Wie kann ich Sequelize bitten, den Standard zu ignorieren und genau das zu erstellen, was ich erwartet habe?

Antwort

0

Änderung Benutzer Verein

sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'assignee' ,foreignKey :'ASSIGNEE'}); 
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'reporter' ,foreignKey :'REPORTER'});