Cascade onDelete不使用Sequelize删除连接数据

时间:2017-03-08 07:50:33

标签: node.js postgresql sequelize.js

SequelizeJS onDelete Cascade没有删除连接表记录,下面是我的代码

company.hasMany(employee, {foreignKey: 'companyId'});

employee.belongsTo(company, {foreignKey: 'companyId', onUpdate: 'CASCADE', onDelete: 'CASCADE'});

这里的公司是父母,员工是孩子

company.hasMany(vendor, {foreignKey: 'companyId'});

vendor.belongsTo(company, {foreignKey: 'companyId', onUpdate: 'CASCADE', onDelete: 'CASCADE'});

这里公司是父母,供应商是孩子

我的删除路线代码:

router.delete('/company/:companyId', function(req, res){
        var companyId = req.params.companyId;
        dataSet.destroy({where: {companyId: companyId}}, include: [employee, vendor])
            .then(function(response){
                res.json(response);
            })
        .catch(function(err){
            res.json(err)
        })
});

这里删除时,公司被删除但员工和孩子没有删除。

更新

在调用company.destroy();

时执行此查询
DELETE FROM company WHERE companyId = 2;

有没有其他方法可以执行删除方法?是我的代码ryt?

0 个答案:

没有答案