【发布时间】:2016-10-09 17:38:39
【问题描述】:
我正在为 Firebase 后端使用 Geofire 框架,但在数据库中保存位置时遇到问题。
我需要按照自动生成的 id 值的顺序将用户选择的位置保存在 Orders 表中。
@IBAction func proceedOrder(_ sender: UIButton){
FIRAuth.auth()?.addStateDidChangeListener({ (auth, user) in
if user != nil {
let userUID = (user?.uid)!
let scheduled = self.pickDateTextField.text!
let time = self.pickTimeTextField.text!
let service = self.pickServiceTextField.text!
let model = self.carModelTextField.text!
self.ref = FIRDatabase.database().reference(fromURL: "https://***-****-***.firebaseio.com/")
let geoFire = GeoFire(firebaseRef: self.ref)
let dateCreated = Int(NSDate().timeIntervalSince1970)
let orderRef = self.ref.child("Orders").childByAutoId()
let values = ["uid":userUID,"date_Created":dateCreated,"date_Scheduled":scheduled,"time_Scheduled":time,"service_Type":service,"car_Model":model,"status":"Scheduled"] as [String : Any]
orderRef.updateChildValues(values, withCompletionBlock: { (err, dbRef) in
if err != nil {
print("Error: \(err)")
return
} else {
geoFire?.setLocation(self.currentLocation, forKey: "Orders\(dbRef.key)")
}
})
}
})
}
【问题讨论】:
标签: ios swift firebase firebase-realtime-database geofire