2017-05-30 3 views
0

Ich habe zwei Modelle mit Sequelize cli erstellt; erstes Modell ist user_number, das zweite Modell ist emailSign.Destroy Kaskade funktioniert nicht in Sequelize Orm

Das ist mein user_number Modell:

'use strict'; 
    module.exports = function(sequelize, DataTypes) { 
    var user_number = sequelize.define('user_number', { 
    user_id: DataTypes.INTEGER, 
    callRoute_id: DataTypes.INTEGER, 
    password: DataTypes.STRING, 
    }, { 
    underscored: true, 
    classMethods: { 
     associate: function(models) { 
      // associations can be defined here 
      user_number.hasMany(models.emailSign, { 
       foreignKey: 'user_number_id', 
       onDelete: "CASCADE", 
      }); 
      } 
      } 
     }); 
     return user_number; 
    }; 

Das ist mein emailSign Modell:

 'use strict'; 
     module.exports = function(sequelize, DataTypes) { 
     var emailSign = sequelize.define('emailSign', { 
     email: DataTypes.STRING, 
     user_number_id: DataTypes.INTEGER 
     }, { 
     underscored: true, 
     classMethods: { 
      associate: function(models) { 
      // associations can be defined here 
      emailSign.belongsTo(models.user_number, { 
      foreignKey: 'user_number_id', 

      }) 
     } 
     } 
     }); 
     return emailSign; 
      }; 

ich user_number wollen zerstören emailSign kaskadieren zu entfernen. Mein Code für zerstören ist

User_number.destroy({where:{id : 5}}).then(function(){ 

resp.status(200); 
) 

user_number mit id 5 entfernt, aber emailSign wird nicht entfernt.

Wie kann ich die zugehörige emailSign auch entfernen?

Meine Sequelize Version 3.30.4

+0

https://stackoverflow.com/questions/23634139/sequelize-ondelete-not-working definieren sollte – FiftiN

+0

tanx aber es funktioniert nicht – majid

Antwort

0

Sie onDelete Aktion auf belongsTo Verein

emailSign.belongsTo(models.user_number, { 
    foreignKey: 'user_number_id', 
    onDelete: 'CASCADE' 
}); 
Verwandte Themen