我想在nodejs中使用bookhelf-cascade-delete删除父模型(学生,员工等)的子模型(出勤等)。它的工作正常,但我想添加一个where子句以删除子模型(将所有子模型的where子句分开)。我如何添加where子句?
我查看了其文档,但没有得出结论。 这是我的代码。
//the code where i am deleting employee
var obj = new Employee()
obj.destroy({cascadeDelete: true}).then((result)=>{
res.status(200).json({message: "Employee has been deleted!"})
}).catch((error)=>{
res.status(404).json(error)
})
//Employee model
Employee = bookshelf.Model.extend({
tableName: 'employee',
salary: function(){
return this.hasMany('Salary', 'emp_id');
},
dynamic_column_value: function(){
return this.hasMany('CustomFieldValue', 'related_id').query({where:
{related_to: "employees"}});
},
organization: function(){
return this.belongsTo('Organization', 'organ_id');
},
attendence: function(){
return this.hasMany('Attendance', 'emp_id').query({where: {type:
'employee'}});
}
},{
dependents: ['dynamic_column_value','attendence']
});
现在在出勤表中,我有一列“类型”,代表学生和员工的出勤(出勤表包含学生和员工的出勤),当我级联删除员工模型时,它也会删除与外键匹配的学生出勤率。 我只想添加一个where子句,告诉它根据我的where条件过滤记录。 希望你明白我的意思! 提前致谢!