问题描述
我有 Employee
课和 Salary
课。
Salary 类有一个指向 Employee
类的指针。 Employee
没有工资指针。但如果需要,我可以扩展。
当我删除 Employee
记录时,我想删除与其关联的 Salary
。这可以通过一些 Back4App 脚本或函数来实现吗?
或者只有一种方法可以通过客户端代码来实现。我知道我可以创建一个查询来删除需要员工的工资指针:
let query = PFQuery(className: "Salary")
query.whereKey("employee",equalTo: pfEmployeeObjectReference)
query.findobjectsInBackground { (objects,error) in
//... skip cycle here
object.deleteEventually()
解决方法
对于您的用例,我建议使用 Employee 类的 afterDelete 触发器。要阅读有关触发器的更多信息,请访问以下链接: https://docs.parseplatform.org/cloudcode/guide/#afterdelete
所以你的删除后触发代码应该是这样的:
Parse.Cloud.afterDelete("Employee",(request) => {
//This is the deleted object
var deletedObject = request.object
//Fetching the Salary object associated with the Employee object
var salaryObj = await deletedObject.fetch("pointer_to_salary")
//Deleting the salary object
await salaryObj.destroy({useMasterKey:true});
});