如何搜索Firebase以查看用户是否存在?

时间:2017-10-29 01:44:50

标签: ios objective-c firebase firebase-realtime-database

我试图搜索以查看数据库中是否存在用户类型的电子邮件,而不是我正在编写路径编码。例如,我的第一个孩子被称为“用户”,然后它显示autoID,然后是“电子邮件”,然后是用户电子邮件。问题是如果我搜索用户和电子邮件,应用程序将崩溃,它需要唯一的ID。我希望查看所有电子邮件,以确定用户输入的是否存在

- (IBAction)signIn:(id)sender {

    FIRDatabaseReference *usersRef = [[FIRDatabase database] reference];

    [[[[usersRef child:@"User"] child:@"-Kx_mPZvAzxZ9U3U0VXq"] child:@"Email"] observeEventType:FIRDataEventTypeValue withBlock:^(FIRDataSnapshot * _Nonnull snapshot) {


        NSString *record = snapshot.value;
        if(record.length > 0) {
            NSLog(@"%@", record);
        }else{
            NSLog(@"NO");
        }

    }
 ];}

1 个答案:

答案 0 :(得分:0)

你可以在不知道名字的情况下通过所有这些:

FIRDatabaseReference *usersRef = [[FIRDatabase database] reference];
let users = 
rootRef.childByAppendingPath(User)
menuItems.observeSingleEventOfType(.Value, withBlock: { snapshot in
    for id in snapshot.children.allObjects as! [FDataSnapshot] {
        //Access to every email here
    }
}