gpt4 book ai didi

ios - Parse.com 指针数组或 PFRelation

转载 作者:行者123 更新时间:2023-11-29 02:14:27 25 4
gpt4 key购买 nike

请帮帮我。我正在使用社交网络应用程序。我想创建 PFObject“组”。用户可以关注它。但只有其他参与者可以将其他用户添加为成员。

据我了解,我可以使用 PFRelation 类开发以下功能。但是请告诉我,我如何通过将其他用户添加到组中来开发功能?用户是 protected 类,所以我不能将 PFRelation 添加到另一个用户。因此,只有一种方法可以让另一个用户将用户添加到组中,那就是创建指针数组?

有什么想法吗?谢谢

最佳答案

所以您想在用户和组之间创建多对多关系,并且只有已经是给定组成员的用户才能向该组添加新用户,对吧?

如果是这样,我会怎么做...

  1. 创建群组

    // Create the group and add its creator as the sole group member
    PFUser * user = [PFUser currentUser];
    PFObject * group = [[PFObject alloc] initWithClassName:@"Group"];
    PFRelation * members = [group relationForKey:@"members"];
    [members addObject:user];

    // Set an ACL so that the group is visible but only the
    PFACL * acl = [PFACL ACL];
    [acl setPublicReadAccess:true];
    [acl setWriteAccess:true forUser: user];
    group.ACL = cal
  2. 添加新的组成员

    PFUser * member = [PFUser currentUser];
    PFUser * candidate = ...; // not yet a member
    PFObject * group = ...; // The group candidate wants to join
    PFRelation * members = [group relationForKey:@"members"];
    [members addObject:candidate];
    [group.ACL setWriteAccess:true forUser:candidate];

在第 2 步中,成员是组的成员,因此具有添加新用户 candidate 所需的写入权限。在第 2 步之后,候选人现在是正式成员并获得了对该组的写入权限。

但是我还没有测试过这个:- 关系是否从组中“继承”了 ACL?或者任何可以阅读组、可以访问关系然后将自己添加到组中的人?

成员之间的角色似乎也很难区分。我认为现在任何成员都可以决定删除该组...

您最好在应用程序级别执行规则。

关于ios - Parse.com 指针数组或 PFRelation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28905230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com