如何接受或拒绝Parse的朋友请求?

时间:2013-08-10 23:19:13

标签: iphone objective-c request parse-platform friendrequest

现在,我的应用中的“朋友”组件会列出已注册该应用的每个用户。然后,用户A可以根据需要添加任意数量的朋友并与他们进行交互。

我想要做的是允许用户A向这些用户发送请求,以便用户B,用户C等可以接受或拒绝与用户A交互的请求。

有没有人成功完成这项工作?

有关如何处理此问题的任何提示/建议/教程?

谢谢!

编辑:

这是我尝试过的。

我有一个名为Friendship的新课程,其中包含:

toUser - 指向User类

fromUser - 指向User类

status - string

PFQuery * query = [PFQuery queryWithClassName:@"Friendship"];
[query whereKey:@"toUser" equalTo:[PFUser currentUser]];
[query whereKey@"status" equalTo:@"pending"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    if (error)
    {
        //NSLog error
    }
    else {
         self.followingArray = objects;
         [self.myTableView reloadData];
    }

对象没有返回任何内容。

1 个答案:

答案 0 :(得分:10)

我建议如下FriendRequest课程:

Class: FriendRequest
fromUser (pointer:User)
toUser (pointer:User)
status (string)

您的操作分为以下几部分:

  • 显示我发送的待处理请求
  • 显示等待我批准/拒绝的请求
  • 批准请求
  • 拒绝请求
  • 发送好友请求
  • 与用户取消联系

显示待处理请求的问题是对FriendRequest类进行查询,其中fromUserstatus为“待定”的当前用户。

显示等待操作的请求将是针对FriendRequest类的查询,其中toUserstatus为“待定”的当前用户。

批准请求意味着更新FriendRequest记录以获得status“已批准”并将每个用户添加到其他朋友列表(可能是User类中的关系字段)。

拒绝请求意味着更新FriendRequest记录,使status为“拒绝”。

发送好友请求会检查是否有任何现有记录fromUser是当前用户且toUser是目标,或fromUser是目标{{1无论toUser如何,都是当前用户。如果存在现有记录,则不允许其他请求(除非您要设置一些相关规则,例如可以在30天后发送新请求,这将需要存储最后一个请求日期)。如果未找到任何记录,请使用status“待定”创建新的FriendRequest记录。

非友好意味着将用户从彼此的朋友关系中移除,并将status更新为“无朋友”。

如果您添加查看拒绝/未记录记录的功能,则会获得积分。