从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)