2017-09-08 1 views
-1

Ich habe eine Datenbank mit der folgenden Struktur:Firebase: Aktualisierung Ausgabe

databse structure

Ich brauche die Bestellung des Menge Kind Wert zu aktualisieren und dann ein neues Kind updatedAt hinzufügen, die den Zeitstempel dieses Updates müssen. Ich verwende ein Objekt, das die Pfade enthält, die ich aktualisieren möchte und dann ref.update(dataToBeUpdated) aufrufen.

Das Problem ist, dass die Kinder, die ich nicht aktualisiert habe als der Zeitstempel entfernt wird, wenn ich update() aufrufen .. es verhält sich wie ich den Auftragsknoten neu schreiben und nicht einige seiner Kinder bearbeiten .. keine Hilfe?

UPDATE: Hier ist, wie der Code wie folgt aussieht: var dataToUpdate = {[orderPath]: { 'Menge': newAmount, 'updatedAt': firebase.database.ServerValue.TIMESTAMP}} return ref.update (dataToUpdate)

+0

können Sie mehr Code Snap, wie zum Beispiel zur Verfügung stellen, wie Sie die Werte und aktualisieren Kind, den Wert von 'ref' und so weiter. –

+0

var dataToUpdate = { [orderPath]: { 'Betrag': newAmount, 'updatedAt': firebase.database.ServerValue.TIMESTAMP } } return ref.update (dataToUpdate) –

Antwort

0

Es ist vorbei Ihre Daten schreiben, wahrscheinlich, weil Sie nicht den vollständigen Pfad bereitstellen. Zum Beispiel, wenn Sie nur ref.child("postID").update(update) bereitstellen, überschreiben Sie alles unter dieser "postID". Ich kann keine genaue Lösung liefern, ohne Ihre Daten und Ihren Code zu sehen. Wenn Sie Ihren Beitrag aktualisieren kann ich zusätzliche Informationen zur Verfügung stellen, aber jetzt versuchen, diese: ref.child("amount").update(newAmount) und ref.child("updatedAt").update(newTimestamp)

Die erste sollte die alte Menge überschreiben und die zweite sollte das Kind updatedAt mit Zeitstempel hinzufügen.

Eine andere Möglichkeit wäre, alle vorhandenen Daten für diese Bestellung herunterzuladen, sie lokal zu aktualisieren und dann die ganze Sache erneut hochzuladen.

Werfen Sie einen Blick auf die update documentation

+0

was ist dann der Unterschied zwischen update und set .. ich denke, sie werden beide das gleiche nach Ihrer Erklärung tun @DoesData –

+0

https://StackOverflow.com/questions/38923644/firebase-update-vs-set – DoesData

Verwandte Themen