2017-01-18 4 views
1

私はアプリを持っており、ユーザーがアカウントを作成すると、そのユーザーのuidが生成されます。2つのノードをリンクするSwift Firebase

ユーザーがアプリを使い続けてカードを作成すると、「カード」の下に別のノードが作成され、そのカードの名前と種類の一意のIDが生成されます。これは私がノードをリンクしようとしています、私は

let card = ref.child("cards").childByAutoId() 

card.setValue(["nickname": finalNickname, "type": finalType]) 

それを行っている方法です、私は1つのツリーの下にすべてをかけるが、それを平らにし、それらを分離して、その後、それをリンクしていないように言われています。

これは、私がしようとしたものであるノー成功

ref.child("users").child((user?.uid)!).child("cards").child(card).setValue(true) 

と私は取得しています問題は.child(...)は文字列を望んでいるということです、そしてカードがFIRDatabaseReferenceです。

アイデア?

答えて

3

あなたcard変数がFIRDatabaseReferenceです。あなたはそうcard.key、それからget the keyに探している:

ref.child("users").child((user?.uid)!).child("cards").child(card.key).setValue(true) 
+0

グレート、+1を...! * Androidタグのトップユーザーとしても、この短い質問にお答えできますか? **クラス**または**ファイル**または**プロジェクト**ごとに、1つの 'public static void main(){}'メソッドを持つべきですか? – Shafizadeh

0

これを試すことができますか?

  ref.child("users").child(user!.uid).child("cards").childByAutoId().setValue(["nickname": finalNickname, "type": finalType]) 

それはあなたが正確にやろうとしているものを実際に明確ではない、あなたはより多くの情報を提供することができ

関連する問題