Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parse platform 解析,当另一个用户创建对象时从iOS客户端更新PFObject?_Parse Platform - Fatal编程技术网

Parse platform 解析,当另一个用户创建对象时从iOS客户端更新PFObject?

Parse platform 解析,当另一个用户创建对象时从iOS客户端更新PFObject?,parse-platform,Parse Platform,从iOS客户端保存解析中的对象时遇到问题 流量: 用户A从iOS客户端保存PFObject,用户B检索PFObject并希望更新它, 当用户B试图保存对PFObject所做的更改时,我收到以下错误: object not found for update (Code: 101, Version: 1.2.19) 所以,据我所知,这是因为对PFObject有写访问权的唯一用户是user A,因为它是实际创建它的用户 问题是: 如何授予B对A首先创建的同一PFObject的写访问权限 可以从客户那

从iOS客户端保存解析中的对象时遇到问题

流量:

用户A从iOS客户端保存PFObject,用户B检索PFObject并希望更新它, 当用户B试图保存对PFObject所做的更改时,我收到以下错误:

object not found for update (Code: 101, Version: 1.2.19)
所以,据我所知,这是因为对PFObject有写访问权的唯一用户是user A,因为它是实际创建它的用户

问题是:

如何授予B对A首先创建的同一PFObject的写访问权限

可以从客户那里完成吗

如果没有,我可以编写什么样的云函数来更改PFObject上的ACL,以便B可以更新PFObject?我可以在保存之前先做吗

代码如下:

PFQuery * photoQuery = [PFQuery queryWithClassName:@"UserPhoto"];
[photoQuery whereKey:@"username" equalTo:user.username];
[photoQuery whereKey:@"version" equalTo:version];
NSArray * photos = [photoQuery findObjects];

PFObject * photo = nil;
if([photos count]) {
    photo = [photos lastObject];
    NSNumber * previousVersion = [photo objectForKey:@"version"];
    [photo setObject:previousVersion?@(previousVersion.integerValue+1):@0 forKey:@"version"];
} else {
    photo = [PFObject objectWithClassName:@"UserPhoto"];
    [photo setObject:version forKey:@"version"];
}

[photo setObject:user.username forKeyedSubscript:@"username"];
[photo removeObjectForKey:@"userRelation"];

PFACL * postACL = [PFACL ACLWithUser:[PFUser currentUser]];
[postACL setPublicReadAccess:YES];
[postACL setPublicWriteAccess:YES];
photo.ACL = postACL;

NSError * error;
BOOL savedPhoto = [photo save:&error];

你能分享你的代码以供用户B搜索和更新吗??你也可以看看这个@walle84:我在问题中添加了代码……你是否检查了我共享的链接,并在更新之前移动了你的PFACL代码。与当前场景一样,您需要先更新,然后再设置权限“是”。下面是一个详细的答案,这可能会有所帮助。@walle84:我在更新之前将ACL移动到了。不起作用。