私はFirebaseを学んでいるだけで、どの操作でもデータが置き換えられることに気付きました。これはcouchDBで見たものとは少し異なります。Firebase - 元に戻すことができる.update()を実装する正しい方法?
.update()
操作のロールバック/元に戻すことを可能にする目的で、私はそのドキュメントを理解して、.push()
メソッドを使用します。 2つのバージョンのデータを保存して、前のオブジェクトを照会できるようにすることです。私は2つ以上のアイテムを格納していないので、起動するには、FILOのようなアプローチが必要です。 FIRST WRITE BEFORE
DATABASE:最初の書き込みref.child(someObject).update({keyOne:valueOneUpdated})
AFTER
myData
+ someObject
- keyOne : valueOne
- keyTwo : valueTwo
データベース:Iアイテムの前のバージョンを失ったため
myData
+ someObject
- keyOne : valueOneUpdated
- keyTwo : valueTwo
以上が、所望の結果ではありません。 FIRST WRITE ref.child(keyOne).push({keyOne:valueOneUpdated})
AFTER
DATABASE:
myData
+ someObject
+ keyOne
+ 1k34jh23kj4h : valueOneUpdated
+ 237we8sjkdf8 : valueOne
- keyTwo : valueTwo
ウエッ! このような操作の最後の項目を取り除く方法がないので、どの項目が最初で、最後の項目が何であるか把握しなければなりません。
ロールバックを可能にするためには、エレガントで直接的な方法が必要ですか?私は何が欠けていますか?
ありがとうございました。
Firebaseは、データに組み込みのバージョン管理メカニズムを提供していません。データベースにバージョン管理システムを構築するには、多くの方法があります。どちらがあなたに最適なのかは、主にアプリケーションのニーズに左右されます。 –