Ios 向PFRelation添加用户

Ios 向PFRelation添加用户,ios,swift,parse-platform,Ios,Swift,Parse Platform,我正在尝试在我的应用程序中创建好友系统,当用户接受好友请求时,我会将两个用户添加到如下关系中: var cUserRelation = PFUser.currentUser().relationForKey("friendsRelation") as PFRelation var senderRelation = sender.relationForKey("friendsRelation") as PFRelation cUserRelation.addObject(sender) send

我正在尝试在我的应用程序中创建好友系统,当用户接受好友请求时,我会将两个用户添加到如下关系中:

var cUserRelation = PFUser.currentUser().relationForKey("friendsRelation") as PFRelation
var senderRelation = sender.relationForKey("friendsRelation") as PFRelation

cUserRelation.addObject(sender)
senderRelation.addObject(PFUser.currentUser())

PFUser.currentUser.saveInBackground()
sender.saveInBackground()

但是由于某些原因,它只为当前用户将发送者添加到关系中。我怎样才能解决这个问题?谢谢:

这里有一个来自treehouse的示例项目可能会有所帮助:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

[self.tableView deselectRowAtIndexPath:indexPath animated:nil];


UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

// if the current relationKey doesn't exist, it will be create for us.
PFRelation *friendsRelation = [self.currentUser relationForKey:@"friendsRelation"];
// adding users is easy. use addObject methoed then we can pass in the user that was tapped on as the parameter. To get that user, we have to get the indexPath just like we did in the 'cellForRowAtIndexPath' method
PFUser *user = [self.allUsers objectAtIndex:indexPath.row];

if ([self isFriend:user])
{

    cell.accessoryType = UITableViewCellAccessoryNone;
    // 2. remove from the array of friends // the only way we have to find a user in an array is to loop through and look for a matching objectid.
    for (PFUser *friend in self.friends)
    {
        if ([friend.objectId isEqualToString:user.objectId])
        {
            [self.friends removeObject:friend];
            break;
        }
    // 3. Remove from the backend
        [friendsRelation removeObject:user];
        [self.currentUser saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
            NSLog(@"Error %@ %@", error, [error userInfo]);
        }];
    }
}
    else
{
    cell.accessoryType = UITableViewCellAccessoryCheckmark;
    [self.friends addObject:user];
    for (PFUser *friend in self.friends) {
        if ([friend.objectId isEqualToString:user.objectId]) {
            [self.friends addObject:friend];
            break;
        }

        // and now we can use the user variable here as the parameter for addObject, which adds the user locally
        [friendsRelation addObject:user];
        // but we also have to add the user on the backend
        [self.currentUser saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
            if (error) {
                NSLog(@"Error %@ %@", error, [error userInfo]);
            }
        }];


    }
}
}