0

Parse でユーザーの多数の友人メッセージを照会する必要があります。

友人と現在のユーザーの 2 人のユーザーを持つ Friend_Relation オブジェクトがあります。

各ユーザーには多くの Message オブジェクトがあります (私は最新のものだけに関心があります)。この関係は次のようになります。 [message setObject:currentUser forKey:@"userMessage"];

ユーザー オブジェクトには、最新のメッセージ objectId の属性があります。

ユーザーの友達とそのメッセージをすべて取得するにはどうすればよいですか?

ユーザーのすべての友達を簡単に照会できるかどうかを考えていました。次に、ユーザーの友人から取得した objectIds の NSArray を作成できれば、別の 1 つのクエリでそれらのユーザーのメッセージをすべて取得できます。このタイプのクエリをオンザフライで作成するにはどうすればよいですか?

4

2 に答える 2

0

答えは、contained in メソッドを次のように使用することです。

NSArray *names = [self.user objectForKey:@"friends"];
        [query whereKey:@"userMessaga" containedIn:names];
于 2013-07-16T23:58:24.150 に答える
0

これを実現するには、おそらく内部クエリを使用できます。

PFQuery *getAllFriendsInnerQuery = [[currentUser relationForKey:@"friend"] query];
PFQuery *messageQuery = [PFQuery queryWithClassName:@"Message"];
[messageQuery whereKey:@"userMessage" matchesQuery:getAllFriendsInnerQuery];
[messageQuery findObjectsInBackgroundWithBlock:^(NSArray *array, NSError *error) {
    // Here the parameter array contains all the messages from current user's friends
}];
于 2013-07-06T00:45:44.953 に答える