为什么 PFRelation 不支持 fromLocalDataStore 查询?
Why PFRelation does not support fromLocalDataStore queries?
我有一个 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);
}];
它 returns 什么都没有,尽管我已经用 [myObject pinInBackground]
.
固定了我的用户和相关对象
为什么PFRelation
查询不支持fromLocalDataStore
?我做错了什么?
我为这个问题创建了一个 bug report
escalated to the engineering team to investigate further
看来这是一个错误
与此同时,我已将所有 PFRelations
转换为指向相关 PFObject
的指针数组。不像 PFRelation
那样花哨,但可以很好地处理本地数据存储。
更新:在 Parse SDK v.1.7.3
中解析 solved the issue
这是一个解析错误。也可以是reproduced with Android SDK。我不确定 iOS,但在 Android 我找到了让它工作的方法。
您需要 "related" class 中的 Pointer
到 Relation
中的 ParseObject
。
在你的例子中,你有一个 PFUser
,它有几个 PFRelation
。如果您在 "related" classes 中将 PFPointer
添加到 PFUser
,则从本地数据存储区查询就可以正常工作。
或者对于我上面 link 的情况 - 如果 Comment
class 会有 Pointer
到 Post
class 一切会很好。
在 parse 1.7.5 中有同样的问题(发行说明提到他们修复了这个错误,但仍然对我不起作用)
您可以通过对每个固定对象的关系执行单独的查询来使其工作(也许有一种方法可以同时对所有对象执行此操作?)。然后固定关系查询的结果。
之后,从本地数据存储的查询开始正常工作。
我有一个 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);
}];
它 returns 什么都没有,尽管我已经用 [myObject pinInBackground]
.
为什么PFRelation
查询不支持fromLocalDataStore
?我做错了什么?
我为这个问题创建了一个 bug report
escalated to the engineering team to investigate further
看来这是一个错误
与此同时,我已将所有 PFRelations
转换为指向相关 PFObject
的指针数组。不像 PFRelation
那样花哨,但可以很好地处理本地数据存储。
更新:在 Parse SDK v.1.7.3
中解析 solved the issue这是一个解析错误。也可以是reproduced with Android SDK。我不确定 iOS,但在 Android 我找到了让它工作的方法。
您需要 "related" class 中的 Pointer
到 Relation
中的 ParseObject
。
在你的例子中,你有一个 PFUser
,它有几个 PFRelation
。如果您在 "related" classes 中将 PFPointer
添加到 PFUser
,则从本地数据存储区查询就可以正常工作。
或者对于我上面 link 的情况 - 如果 Comment
class 会有 Pointer
到 Post
class 一切会很好。
在 parse 1.7.5 中有同样的问题(发行说明提到他们修复了这个错误,但仍然对我不起作用)
您可以通过对每个固定对象的关系执行单独的查询来使其工作(也许有一种方法可以同时对所有对象执行此操作?)。然后固定关系查询的结果。
之后,从本地数据存储的查询开始正常工作。