2017-06-11 4 views
3

Ich habe versucht, ein Multipath-Update, das ich zuvor erfolgreich im Android-Client erstellt hatte, in eine Cloud-Funktion zu migrieren.Cloud-Funktionen für das Firebase-Multipfad-Update

Für meine Anwendung kann ein Benutzer einen Beitrag (in „Beiträge“) einreichen, die mit einem Auto („Cars“), zB Porsche 911.

Wenn ein Benutzer einen neuen Beitrag („Beiträge“ zugeordnet ist,) Ich möchte die Beliebtheit des zugehörigen Autos in den "Cars" -Daten und auch alle anderen Autoposts, die mit dem gleichen Auto verbunden sind, aktualisieren.

Wenn ich jedoch verschiedene Versionen des Js-Codes als Cloud-Funktion ausführe, durchläuft es nicht meine "carPosts" -Daten, um Pfade zu jedem Post zu erstellen, der aktualisiert werden muss.

Kann mir bitte jemand mit dem erforderlichen js-Code für die Cloud-Funktion helfen?

enter image description here

  1. auf neue Post bekommen Autoschlüssel - ich kann das

  2. Update Auto Beliebtheit an die Arbeit von aktuellen Popularität von 1 erhöht wird - das kann ich an die Arbeit

  3. Aktualisieren Sie alle Auto Beiträge, die mit dem Auto verbunden sind mit neuen Post verbunden sind? Das funktioniert nicht?

    var updKeys = { 
    
         ["posts/-KIL0lbjplFBijxAJ75U/car/popularity"]: '1060', 
    
         ["posts/-KIL0zBcU3Hjx6gf4Gxk/car/popularity"]: '1060', 
    
         ["posts/-KIL1Wv6elvpf3T-0FVK/car/popularity"]: '1060', 
    
         ["posts/-KIL2kUvY62qi46hb2t3/car/popularity"]: '1060', 
        } 
    
+0

Können Sie Ihren nicht funktionierenden Code angeben? –

Antwort

0

Sie die update Funktion von Firebase verwenden. So etwas wie unter

ref.child('posts/${pushid}/car).update({popularity:1060}) 

Dies sollte automatisch alle relevanten Beiträge aktualisieren. Aber Sie müssen möglicherweise die Promises und nachfolgende onWrite Ereignisse behandeln.