如何基于与parse.com中的另一个pfobject相关联的pfobject / pfuser进行查询?

时间:2013-07-06 19:22:52

标签: ios parse-platform

我有一个名为FriendRelation的Parse类。这个类有两个用户,一个是朋友,另一个是用户。

我希望得到用户所有朋友发布的所有消息。我试图通过以下查询来执行此操作:

 PFQuery *innerQuery = [PFQuery queryWithClassName:@"FriendRelation"];
            [innerQuery whereKey:@"user" equalTo:currentUser];
            PFQuery *query = [PFQuery queryWithClassName:@"Message"];
            [query whereKey:@"userMessage" matchesQuery:innerQuery];
            [query findObjectsInBackgroundWithBlock:^(NSArray *comments, NSError *error) {

           }];

此查询返回时没有结果。

我相信这是因为行:

 [query whereKey:@"userMessage" matchesQuery:innerQuery];

where键需要与FriendRelation匹配。它是否正确?

如何让内部查询的结果成为与匹配查询实际匹配的用户?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以尝试使用

- (void)whereKey:(NSString *)key matchesKey:(NSString *)otherKey inQuery:(PFQuery *)query

类似的东西:

PFQuery *innerQuery = [PFQuery queryWithClassName:@"FriendRelation"];
        [innerQuery whereKey:@"user" equalTo:currentUser];
        PFQuery *query = [PFQuery queryWithClassName:@"Message"];
        [query whereKey:@"userMessage" matchesKey:@"firendUser" inQuery:innerQuery];
        [query findObjectsInBackgroundWithBlock:^(NSArray *comments, NSError *error) {
            //do something useful..
       }];

让我知道它是怎么回事!