繁体   English   中英

Ios- Parse.com删除一个对象

[英]Ios- Parse.com delete an object

我想我的情况太复杂了。 我正在处理多种情况下的联接表。

如果我找到一个连接,我想删除它,如果我找不到,我想添加它。

添加新连接工作正常。 我无法想象如何删除..

这是我的代码。 如果有人发现任何错误 - 或者更好的方法,请提供建议。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"%s", __FUNCTION__);

    //Create query for all current user objects
    PFQuery *query = [PFQuery queryWithClassName:@"DDPeopleJoin"];
    [query whereKey:@"parseUser" equalTo:[PFUser currentUser]];

    [query whereKey:@"serviceKey" equalTo:[currentService valueForKey:@"serviceKey"]];
    [query whereKey:@"personKey" equalTo:[currentPerson valueForKey:@"personKey"]];

    query.cachePolicy = kPFCachePolicyCacheThenNetwork;

    // Run the query  -  if there is an object delete it otherwise, go to JoinPeople
    allDeadPeople = [NSMutableArray new];
    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if (!error) {
            if (!objects) {
                NSLog(@"New Person");
                [self joinPeople];
                return;
            }
            NSLog(@"Found a match, erase them");

            for (PFObject *object in objects) {
                [object deleteInBackground];
            }
            [self refreshJoins:self];
        }

    }];

}

首先,您可以使用以下内容,而不是使用枚举块来删除每个对象:

 [PFObject deleteAllInBackground:objects];

其次,你可能会遇到麻烦[self refreshJoins:self coz它将在所有object被删除之前运行。 你应该把它放在-deleteInBackground:block以确保[self refreshJoins:self]`正常工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM