Ant*_*ton 2 javascript objective-c parse-platform
我有带有实体的解析表。User - 默认类 Commets - 带有指向 _User 实体的指针的类。
我需要从实体 User 中删除用户及其所有评论,位于 Comments 实体中:
现在我有JS云代码:
Parse.Cloud.define("deleteUser", function(request, response) {
var User = Parse.Object.extend("User");
var query = new Parse.Query(User);
var userID = request.params.userID;
query.get(userID,{
success: function(User) {
var message = 'success';
User.destroy({
useMasterKey: true ,
success:function() {
response.success(message);
return;
},
error:function(error) {
response.error('Could not delete object '+ User.id);
return;
}
});
},
error: function(object, error) {
var message = 'User could not found';
response.error(message);
}
});
});
Run Code Online (Sandbox Code Playgroud)
它仅删除用户。我如何组合以删除用户从其他实体中删除的记录?
感谢您的提前
正如 eth3lbert 在评论中指出的那样,您应该使用 afterDelete 钩子,该钩子在删除 User 对象后被调用。您可以启动您想要的任何其他删除操作。
然而,有一个小问题,before* 和 after* 方法在 3 秒的挂钟时间后被终止,这可能会导致不需要的结果,具体取决于您需要删除的数据量。
最适合您的解决方案是设置一个后台作业(它们最多可以运行 15 分钟),安排其运行(假设每天运行一次),并在该作业中执行任何清理工作。
您可以为此创建一个简单的表,其中包含已删除用户的 objectId,每当您的afterDelete方法被调用时,您将已删除的用户 id 添加到该表中,然后后台作业在运行时查询该表并删除与它。
| 归档时间: |
|
| 查看次数: |
2269 次 |
| 最近记录: |