微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何实现级联触发器?

如何解决如何实现级联触发器?

我有两门课: A类:Field1(字符串)、Field2(数字) B类:Field3(指向类1的指针),Field4(字符串)

Field4(B 类)设置为等于 Field1(A 类)。

现在,在 A 类的 beforeSave 触发器中,如何检测其他类中的字段(例如 B 类中的 Field3)指向 A 类中的哪些字段,以便: 可以执行(自定义?)触发器,或者 可以运行一个函数, 更新 B 类中的依赖字段(在本例中为 Field4)?

因为,如果在 Class B 的上下文中没有检测到 Class A 中的此更新,则 Class B 中的数据将不同步!

解决方法

你可以这样做:

Parse.Cloud.afterSave('ClassA',async ({ original,object }) => {
  if (original.get('field1') !== object.get('field1')) {
    const query = new Parse.Query('ClassB');
    query.equalTo('field3',object);
    const objs = await query.find({ useMasterKey: true });
    objs.forEach(obj => {
      obj.set('field4',object.get('field1'));
    });
    Parse.Object.saveAll(objs,{ useMasterKey: true });
  }
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。