我有一个UID数组,我想查询我的root用户集合以获取包含与该数组中的每个UID相等的用户对象的文档。现在,我的代码如下:
-(void)queryFriendsOfCurrentUser{
FIRUser *user = [[FIRAuth auth] currentUser];
NSMutableArray *friendsUIDArray = [[NSMutableArray alloc] init];
for (NSString *friend in friendsUIDArray){
[[[self.db collectionWithPath:@"Users"] queryWhereField:@"uid" isEqualTo:friend] getDocumentsWithCompletion:^(FIRQuerySnapshot * _Nullable snapshot, NSError * _Nullable error) {
if (error != nil) {
NSLog(@"Error getting documents: %@", error);
} else {
for (FIRDocumentSnapshot *document in snapshot.documents) {
NSDictionary *object = document.data;
[self.friendArray addObject:object];
}
}
}];
}
}
在许多情况下,我的阵列可能包含20多个UID。我是否进行过多的数据库调用,将getDocuments()
插入了for循环?