2017-01-28 8 views
0

Firebaseの特定のリストにアイテムをプッシュした後、updateを使用して新しく作成したアイテムにcreatedByプロパティを追加したいと思います。このプロパティは、ログインしたユーザーのUIDである必要がありますが、最初にログインしたときにそれを保存せずに取得する方法がわかりません。Firebase - データベース上で操作を行ったばかりのユーザーのユーザーIDを取得

上記を実行せずに何とか取得できますか?

eventのキーは欲しくないことに注意してください。

これは私が欲しいものです:

let ref = this.af.database.list('/events'); 

ref.push(eventCopy).then((event) => { 

    const uuid: string = theUserWhoJustPushed.uuid; 

    ref.update(event.key(), {createdBy: uuid}); 
}); 
+0

Firebase認証ユーザーにはUIDがありますが、UUIDはありません。あなたは混乱を避けるためにあなたの語彙を更新したいかもしれません。それ以外に、 'firebase.auth()。currentUser.uid'を試してみましたか? (https://firebase.google.com/docs/auth/web/manage-users#get_the_currently_signed-in_userを参照) –

+0

@FrankvanPuffelen私は1-2年前と同じようにUUIDに変更したと宣誓できましたか?あるいは、彼らはUUIDから変わったのか?とにかく私はそれを試みます。 – Chrillewoodz

+0

値のフォーマットが変更されました(すでに複数回)。しかし、このプロパティはUser IDと呼ばれ、UIDに短縮されています(そして常にそうでした)。 –

答えて

-1

私はあなたがそれを行うためのサービスを作成する場合、それが良いだろうと思います。このサービスのコンストラクタでは、firebase authを購読することによってユーザを取得します。

関連する問題