如何解决如何实现级联触发器?
我有两门课: 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 举报,一经查实,本站将立刻删除。