2017-11-22 4 views
0

私databseノードのJSONです:の取得、ユーザーのuid以下

{ 
    "1YrpX2W2xnMPoy4YGpZcOE0xJ5g2" : { 
    "email" : "[email protected]", 
    "fullname" : "Muyiz", 
    "selection" : [ 1, 2, 3, 4, 5, 6 ], 
    "teamname" : "awon", 
    "total" : 12, 
    "userName" : "motmail.com", 
    "week1" : 0, 
    "week10" : 0, 
    "week11" : 0, 
    "week12" : 0, 
    "week2" : 0, 
    "week3" : 0, 
    "week4" : 0, 
    "week5" : 0, 
    "week6" : 12, 
    "week7" : 0, 
    "week8" : 0, 
    "week9" : 0 
    }, 
    "6K9rQiZQ3jaV38WWtDbNwxhqIwc2" : { 
    "email" : "[email protected]", 
    "fullname" : "Dai", 
    "selection" : 0, 
    "teamname" : "Bayern Neverlosin'", 
    "total" : 0, 
    "userName" : "[email protected]", 
    "week1" : 0, 
    "week10" : 0, 
    "week11" : 0, 
    "week12" : 0, 
    "week2" : 0, 
    "week3" : 0, 
    "week4" : 0, 
    "week5" : 0, 
    "week6" : 0, 
    "week7" : 0, 
    "week8" : 0, 
    "week9" : 0 
    }, 
    "9OgN4HyMtARaQEQV1mKQ5lyE1992" : { 
    "email" : "jonail.com", 
    "fullname" : "Jon", 
    "selection" : [ 40, 8, 10, 24, 18, 34 ], 
    "teamname" : "Chad fc", 
    "total" : 0, 
    "userName" : "[email protected]", 
    "week1" : 0, 
    "week10" : 0, 
    "week11" : 0, 
    "week12" : 0, 
    "week2" : 0, 
    "week3" : 0, 
    "week4" : 0, 
    "week5" : 8, 
    "week6" : 0, 
    "week7" : 0, 
    "week8" : 0, 
    "week9" : 0 
    }, 
    "AGVZAUye5ZbZgvwCOpMeDkoOsEU2" : { 
    "email" : "[email protected]", 
    "fullname" : "Emeka Iheme", 
    "selection" : 0, 
    "teamname" : "Young Money", 
    "total" : 0, 
    "userName" : "[email protected]", 
    "week1" : 0, 
    "week10" : 0, 
    "week11" : 0, 
    "week12" : 0, 
    "week2" : 0, 
    "week3" : 0, 
    "week4" : 0, 
    "week5" : 0, 
    "week6" : 0, 
    "week7" : 0, 
    "week8" : 0, 
    "week9" : 0 
    } 
} 

ユーザノードの下に各ユーザーのユーザーのuidにアクセスする方法はありますか?

目標は、私のクラウド機能に次のコードを実行させることです。

ref = admin.database().ref(`/users/${user.uid}/week1`); 

をしかし、それはスタンドとして、以下のクラウド機能は、ユーザーが定義されていないというエラーを返します:

exports.update = functions.database.ref('/users/{uid}') 
    .onWrite(event=>{ 
ref = admin.database().ref(`/users/${user.uid}/week1`); 
return ref.set(50); 

} 

答えて

0

データベーストリガーでワイルドカードを定義すると、次のようになります。ワイルドカードには、渡されたイベントからevent.params.uidという名前でアクセスできます。詳細については、documentationを参照してください。

+0

ありがとうございました。しかし、この結果は、キー{uid}と値50を持つfirebaseデータベースにノードを作成し、各ユーザーに値50を設定することと相反していました。 –

関連する問題