0

したがって、すべてのユニークキー(ユーザーID)の特定の値を変更するhttpトリガー機能をコーディングしようとしています。私は何かを書いたが、出力は私が必要なものではない。既存の値を変更するのではなく、新しいユーザーIDを作成します。 .push()を使用してすべてのユニークキーの特定の値を変更する

const functions = require('firebase-functions') 
const admin = require('firebase-admin') 

admin.initializeApp(functions.config().firebase) 

exports.picksReset = functions.https.onRequest((req, res) => { 

    const ref = admin.database().ref() 

    const usersPicked = [] 

    ref.child('users').once('value').then(snap => { 
    snap.forEach(childSnap => { 

     ref.child('/users/{userId}').push({picksDone: "0"}) 
     console.log("Changing value...") 

    }) 
    }) 

    res.send("Done!") 

}) 

私のデータベースの画像...

enter image description here

答えて

1

はpushIdで新しい子を作成します。代わりに、.update()を使用してください。詳細はhereのドキュメントを参照してください。各ユーザーの子供をpicksDoneに変更する場合は、次のようにしてください:

const functions = require('firebase-functions') 
const admin = require('firebase-admin') 

admin.initializeApp(functions.config().firebase) 

exports.picksReset = functions.https.onRequest((req, res) => { 

    const ref = admin.database().ref() 

    const usersPicked = [] 

    ref.child('users').once('value').then(snap => { 
    snap.forEach(childSnap => { 
     const key = childSnap.key 
     ref.child(`users/${key}`).update({picksDone: "0"}) 
     console.log("Changing value...") 

    }) 
    }) 
    res.send("Done!") 
}) 
+0

ありがとうございます! Firebaseにもっと深く入り込む必要があります:) –

関連する問題