それは私が新しい価値のを設定するには、このコードを使用する必要があることを述べているドキュメントで:値の代入は削除され、古い値の
self.ref.child("users").child(user.uid).setValue(["username": username])
この方法で、私は、ユーザー名を設定することができます。
var XPPoints = 1
self.ref.child("users").child(user.uid).setValue(["XPPoints": XPPoints])
これは、しかし、ユーザ名の値、または以前に保存した他の値を削除します。私はXPのポイントと同様に、後に別の値を追加したい場合は、私は次のコード行を使用します。それはすべての価値を置き換えます。 私ものドキュメントが言っている二つ目試してみました:このコード行であるhttps://firebase.google.com/docs/database/ios/read-and-write#basic_writeを:起動時
self.ref.child("users/(user.uid)/username").setValue(username)
これは即座に私のアプリがクラッシュします。私の質問は:どのように私はデータを追加することができ、古い値を置き換えることはできませんか?
編集: はにコードを変更することで、それを修正:。 self.ref.child( "ユーザー/ \(user.uid)/ユーザ名")のsetValue(ユーザー名)
'user.uid'は実際の値に置き換えてください。ドキュメントは、これがプレースホルダーであることを意味するか、この例ではエラーが発生しています。これを試してください: 'self.ref.child(" users/\(user.uid)/ username ")。setValue(username)'。このようにして、適切なユーザuidが供給されるので、実際のパスは "users/100/username"のようになります。 –
ええ、私はそんな奴だ。ありがとうございました! – Petravd1994