从firebase实时数据库IOS Swift中检索数据

Posted

技术标签:

【中文标题】从firebase实时数据库IOS Swift中检索数据【英文标题】:Retrieving data from firebase realtime database IOS Swift 【发布时间】:2017-02-20 11:34:14 【问题描述】:

我一直在尝试从 firebase 实时数据库中检索数据,但没有任何运气。

我有一个 4 文本字段,您可以在其中输入用户配置文件数据,然后使用 user.uid 将其存储在 firebase 实时数据库中,但我不知道如何将信息检索回标签。

下面是我如何存储数据的代码。关于如何检索数据的任何想法?谢谢你的帮助。

@IBAction func saveAction(_ sender: Any) 

    if favTeamTextfield != nil && usernameTextfield != nil && fullNameTextfield != nil && phoneNumberTextfield != nil
    
        //Post data to firebase
        ref?.child("Users").child((user?.uid)!).setValue(["Full Name": fullNameTextfield.text, "Username": usernameTextfield.text, "Phone Number": phoneNumberTextfield.text, "Favorite Soccer Team": favTeamTextfield.text]) 

        // dismiss the page
        presentingViewController?.dismiss(animated: true, completion: nil)     
    
    else
    
        let alertController = UIAlertController(title: "Oops!", message: "Please enter a username to save!", preferredStyle: .alert)

        let defaultAction = UIAlertAction(title: "OK", style: .cancel, handler: nil)

        alertController.addAction(defaultAction)

        self.present(alertController, animated: true, completion: nil)

    


【问题讨论】:

检查这个-:***.com/questions/37759614/… 【参考方案1】:

试试这个

_ref = [[FIRDatabase database] reference];

[[_ref child:@"userDetail"] observeEventType:FIRDataEventTypeChildAdded withBlock:^(FIRDataSnapshot * _Nonnull snapshot) 

  NSLog("%@",snapshot.value)

 withCancelBlock:^(NSError * _Nonnull error) 

    NSLog(@"%@",[error localizedDescription]);

];

--- 编辑 ----

在firebase中保存数据

 FIRUser *user = [FIRAuth auth].currentUser;
 FIRDatabaseReference *ref = [[FIRDatabase database] reference];
 [ref keepSynced:YES];
 [[[ref child:@"userDetail"] childByAutoId]   setValue:@@"user_id":user.uid,@"user_name":user.displayName,@"user_email":user.email];

【讨论】:

以上是关于从firebase实时数据库IOS Swift中检索数据的主要内容,如果未能解决你的问题,请参考以下文章

iOS Swift 中的 firebase 实时数据库推送等价物是啥?

无法使用 Swift 5 (iOS) 从 Firebase 数据库中获取和打印单个值

将 async/await (Swift 5.5) 与 firebase 实时数据库一起使用

在 Firebase 实时数据库中实现用户名(swift 4)

如何通过在 swift 中实现观察者从 Firebase 实时数据库中获取嵌套数据

在 Swift 中的 Firebase 实时数据库观察方法中具有异步函数的 DispatchGroup