2

我只是想知道最简单/建议的方法是删除 PFObject 以及与之相关的所有内容。例如,在照片分享应用中,如果上传者想删除他/她发布的照片​​,您如何同时删除与该照片相关的所有“喜欢”和评论?

现在,我正在使用:

[PFObject deleteInBackground] 

但这只会删除对象本身。我知道我可以查询指向帖子的活动并一一删除,如下所示:

    PFQuery *query = [PFQuery queryWithClassName:@"activity"];
    query.cachePolicy = kPFCachePolicyNetworkOnly;
    [query whereKey:@"image" equalTo:PFObject];
    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        for (int i = 0; i < [objects count]; i++) {
            [[objects objectAtIndex:i] deleteInBackground];
        }
    }];

我只是想知道这是否是典型的做法,或者是否有更简单的方法。我想尽量减少我的应用程序中的查询数量,所以如果有一种方法可以在不查询“活动”的情况下做到这一点,那将是有益的。

同样为了将来参考,删除所有指向对象的东西是典型的,还是在呈现它时将其过滤掉更好?

4

1 回答 1

2

通常最好过滤掉“已删除”的对象,而不是直接删除它们。您可以尝试创建一个将父对象以及任何相关对象标记为“已删除”的云函数。

于 2013-07-08T19:00:31.453 回答