2017-04-26 29 views
0

我試圖用Firebase將數據寫入實時數據庫,但是我在過去正確地完成了這一操作 - 但似乎無法使其工作。這裏是生產,我recieving錯誤的函數:類型「ViewController」的值與Firebase沒有成員'ref'

@IBAction func saveButton(_ sender: Any) { 
     var ref: FIRDatabaseReference! 
     ref = FIRDatabase.database().reference() 
     self.ref.child("user").child(user.uid).setValue(["test": "test"]) 
} 

這是產生錯誤:

Value of type "DailyVC" has no member 'ref' 

我試圖在這裏和大汗的文檔閱讀的意見,但似乎無法修復這個錯誤。謝謝。

編輯: 我試圖消除在最後一行開頭的「自我」,但是這導致了以下錯誤:

Type 'user' has no member 'uid' 

這是同樣困惑我。

+0

更換'self.ref.child ...'和'ref.child ...'。 'self.ref'不存在。 – shallowThought

+0

它是什麼類型的'用戶' –

+0

@shallowThought我試過這個,並在編輯我添加 - 一個新的錯誤已產生,我不明白任何,也謝謝你。 –

回答

0

user類型應該是FIRUser如果你想訪問它的uid屬性。

並參考THISTHIS文檔更多關於FIRUser的信息。

0

你還沒有提供如何聲明'用戶'變量,但我已經完成了這個工作。另外,由於數據庫引用不會改變,您應該考慮將其更改爲常量。

@IBAction func saveButton(_ sender: Any) { 

    guard let user = FIRAuth.auth()?.currentUser else { return } 

    let ref = FIRDatabase.database().reference() 

    ref.child("user").child(user.uid).setValue(["test": "test"]) 
} 

這是它成功保存到數據庫的屏幕截圖。

Screenshot of this data being saved to the database

相關問題