2017-10-10 9 views
1

次のように、uidと共にデータベースに名前をプッシュします。私は同じ時間に別の場所にそのuidを保存したいと思います。どうすればこれを達成できますか? Imはionic 3、angularfire2を使用しています。firebase uidを複数の場所にプッシュする - Angularfire2 Ionic 3

addName() { 
     let prompt = this.alertCtrl.create({ 
     title: 'Name of user', 
     message: "Enter a name for this new user", 
     inputs: [ 
      { 
      name: 'Name', 
      placeholder: 'Username' 
      }, 
     ], 
     buttons: [ 
      { 
      text: 'Cancel', 
      handler: data => { 
       console.log('Cancel clicked'); 
      } 
      }, 
      { 
      text: 'Save', 
      handler: data => { 
       this.users.push({ 
       title: data.Name, 

       }); 

       this.posts.push({ 
       title: data.Name 
       }); 
      } 
      } 
     ] 
     }); 
     prompt.present(); 
    } 

事前

答えて

3

のおかげでは、あなたのコードは、ユーザーを認証しないので、何のUID(ユーザIDの略)関係はありません。

しかし、あなたは二つの位置に書き込むとき同じプッシュIDを使用するために探している場合:

handler: data => { 
    var key = this.users.push().key; 
    this.users.child(key).set({ 
    title: data.Name, 

    }); 

    this.posts.child(key).set({ 
    title: data.Name 
    }); 
} 

あなたも、単一の更新に2つのsetの操作を組み合わせることができますが、私はよく分かりませんあなたのuserspostsの参照はどのように関連していますか?両方ともルートからの直接の子供の場合は、

handler: data => { 
    var key = this.users.push().key; 
    var updates = {}; 
    updates["users/"+key+"/title"] = data.Name; 
    updates["posts/"+key+"/title"] = data.Name; 
    this.ref.update(updates); 
} 
+0

私が必要としていたとおりです。申し訳ありませんが、私はプッシュIDまたはあなたが述べた一意のIDを参照していました。再度、感謝します! – MacD

関連する問題