Back4App 删除关联对象的脚本。类似于 AWS lambda

Back4App delete associated objects script. Similar to AWS lambda

我有一个 Employee class 和 Salary class。

工资 class 有一个指向 Employee class 的指针。 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 class 的 afterDelete 触发器。要阅读有关触发器的更多信息,请访问以下 link: 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});

});