Ios 为什么PFRelation不支持fromLocalDataStore查询?

Ios 为什么PFRelation不支持fromLocalDataStore查询?,ios,parse-platform,pfrelation,Ios,Parse Platform,Pfrelation,我有一个PFUser对象,其中有几个PFRelation指向其他对象。当我运行以下代码时: PFRelation *relation = [[PFUser currentUser] relationForKey:@"Relation"]; PFQuery *query = [relation query]; [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){ NSLog(@"%@", o

我有一个
PFUser
对象,其中有几个
PFRelation
指向其他对象。当我运行以下代码时:

PFRelation *relation = [[PFUser currentUser] relationForKey:@"Relation"];
PFQuery *query = [relation query];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){
    NSLog(@"%@", objects);
}];
它很好用。但是,当我想从本地数据存储区执行相同操作时:

PFRelation *relation = [[PFUser currentUser] relationForKey:@"Relation"];
PFQuery *query = [[relation query] fromLocalDataStore]; // !!!
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){
    NSLog(@"%@", objects);
}];
它什么也不返回,尽管我已经用
[myObject pinInBackground]
锁定了我的用户和相关对象

为什么
PFRelation
查询不支持本地数据存储中的
?我做错了什么?

我为这个问题创建了一个

上报给工程团队进行进一步调查

所以它看起来像一只虫子

同时,我将所有的
PFRelations
转换为指向相关
PFObject
s的指针数组。不像PFRelation那么花哨,但可以很好地用于本地数据存储


更新:parse SDK v.1.7.3中的解析

这是一个解析错误。也可以是。在iOS上我不确定,但在安卓上我找到了一种方法让它工作

您需要在具有
关系的
ParseObject
的“相关”类中有一个
指针

在您的例子中,您有一个
PFUser
,它有几个
PFRelation
s。如果将
PFPointer
添加到“相关”类中的
PFUser
,则可以从本地数据存储中进行查询


或者对于我上面链接中的例子-如果
Comment
类将有一个指向
Post
类的
指针,那么一切都会正常工作。

在parse 1.7.5中也有同样的问题(发行说明提到他们修复了这个bug,但对我来说仍然不起作用)

您可以对每个固定对象的关系执行单独的查询(也许有一种方法可以同时对所有对象执行此操作?)。然后锁定关系查询的结果


在此之后,从本地数据存储查询开始正常工作。

关系中的对象是否设置了ACL?LDS不支持ACL,但是,在SDK的v1.6.4中,您可以告诉LDS查询忽略ACL。我目前不确定SDK是否自动从关系中锁定对象,除非您为获取对象而执行的查询包含一个include:@“relationField”,否则它们也可能没有完全从服务器中获取。您是刚刚固定了父对象还是将提取的对象与关系分开?我将分别固定相关对象如果有人感兴趣,我已将所有PFRelation对象转换为指向相关PFObject的指针数组。