我有一个PFObject,Object1和另一个对象Object2的PFRelation。当我查询所有Object1时,当我遍历数组时,我尝试获取PFRelation到Object2的查询以便下拉该对象。我遇到的问题是来自PFRelation的查询结果总是为空。
PFQuery *relationQuery = [PFObject1.childRelationship query];
[relationQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
NSLog(@"I'm empty);
}];
如果我进入Parse控制台,我可以清楚地看到Object1和Object2之间的关系完好无损。我可以点击Object1上的关系,它会把我带到正确的Object2。
无论它总是空的。
答案 0 :(得分:0)
我错误地认为解析中的对象之间的关系属于PFRelation类型,而实际上它只是PFReleation,如果它是多对多的关系,否则它是指向另一个类的指针。我在指针上将代码更改为“fetchIfNeeded”以拉动我的对象,现在它可以正常工作。
答案 1 :(得分:0)
@Adam我最初也犯了Pointer / PFRelation错误 - 我应该更仔细地阅读文档!如果您每次都需要相关对象,这可能更容易/更清洁。根据Parse文档,这里有如何做到这一点。 includeKey
是必不可少的部分。希望有用
PFQuery *query = [PFQuery queryWithClassName:@"Comment"];
// Retrieve the most recent ones
[query orderByDescending:@"createdAt"];
// Only retrieve the last ten
query.limit = 10;
// Include the post data with each comment
[query includeKey:@"post"];
[query findObjectsInBackgroundWithBlock:^(NSArray *comments, NSError *error) {
// Comments now contains the last ten comments, and the "post" field
// has been populated. For example:
for (PFObject *comment in comments) {
// This does not require a network access.
PFObject *post = comment[@"post"];
NSLog(@"retrieved related post: %@", post);
}
}];