微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从保存在 firebase swift 中的 UIPicker 视图中检索密钥 ID

如何解决从保存在 firebase swift 中的 UIPicker 视图中检索密钥 ID

我正在尝试解决,如何将 UIPicker ID 保存在 firebase 中。

我的目标是将部门 ID 与导师 ID 相关联,所以我的部门名称保存到 firbase 作为 nood

Firebase Tree

应用屏幕:

app screen

我对 UIPckier 视图的观察者:

    @objc func ObserveDepartmentFromDatabase () {
    
    
    APIs.Department_APIs.OberveDepartment { (dep) in
        self.DepartmentContiner.append(dep)
    }

}

注册新的导师用户

    @IBAction func SignUp(_ sender: Any) {
    Auth.auth().createuser(withEmail: Email.text!,password: Password.text!) { (user,error) in
        if error != nil{
            print(error?.localizedDescription as Any)
                            return
            } else {
            print("user auth successfully")

            guard let userID = Auth.auth().currentUser?.uid else {
            return
            }
            // storge Image
            let storge : StorageReference!
                storge = Storage.storage().reference(withPath: "gs://uquaac-f7b71.appspot.com ").child("Profile_Images").child(userID)
            if let profileImage = self.userSelectimageToStorage,let ProfileIMG = profileImage.jpegData(compressionQuality: 0.1){
            storge.putData(ProfileIMG,Metadata: nil) { (MetaData,error) in
                if error != nil {
                    print(error?.localizedDescription as Any)
                    return
                }else{
                    storge.downloadURL { (url: URL?,error:  Error?) in
                        let profileURL = url?.absoluteString
                        
                      
        // save DataBase

        let ref : DatabaseReference!
        ref = Database.database().reference()
        let userRef = ref.child("StudentAndTutor")
       

        let newUserREF = userRef.child(userID)
        newUserREF.setValue(["name" : self.Name.text,"email" : self.Email.text,"phoneNumber" : self.PhoneNumber.text,"department" : self.Department.text,"password" : self.Password.text,"profilImage" : profileURL,"userType" : self.userType.text]) { (error,ref) in
            if error != nil {
                print(error?.localizedDescription)
            }
            let linkeDepartmentWithTutor = Database.database().reference().child("linkeDepartmentWithTutorID")
            
            linkeDepartmentWithTutor.child(self.Department.text!).child(userID).setValue(true) { (error,ref) in
                if error != nil {
                                   print(error?.localizedDescription)
                               }
            }
        }
        

  
        let storyboard = UIStoryboard(name: "Main",bundle: nil)
          let vc = storyboard.instantiateViewController(withIdentifier: "TabBar")
          vc.modalPresentationStyle = .overFullScreen
        self.present(vc,animated: true)
    }
    
                    }
                }
            }
          
            
        }
    }

}

数据库显示如下

红线是指 UI 部门键,但在“LinkeDepartmentWithTutorID”中它不显示 ID 它只显示字符串所以我需要知道如何观察当前部门 ID 并将其链接到导师 ID

database tree

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。