如何将我的 Firebase 实时数据库转移到 Firebase Cloud Firestore
Posted
技术标签:
【中文标题】如何将我的 Firebase 实时数据库转移到 Firebase Cloud Firestore【英文标题】:How to transfer my Firebase Realtime database to Firebase Cloud Firestore 【发布时间】:2018-03-15 21:44:18 【问题描述】:我已经在使用 Firebase 实时数据库,但现在 Firebase 已经为数据库推出了 Cloud Firestore,所以我如何将我的数据从实时数据库传输到 Firestore,因为我已经有用户并且他们正在 android 应用上使用实时数据库。
那么,有没有办法可以将数据库转移到 Firestore?
【问题讨论】:
这是一个重复的问题。请看***.com/questions/46639693/… 【参考方案1】:如果您正在寻找可以将您的数据库从Realtime Database
转换为Cloud Firestore
的神奇按钮,那么没有!据我所知,Firebase 的创建者不会创建一个。所以很遗憾,您需要自己转换数据库。
【讨论】:
是的,我想通了。谢谢!【参考方案2】:Firebase 已发布 guide,用于从实时数据库迁移到 Cloud Firestore。
编辑:他们似乎更改了该页面。 Here 是他们之前发布的迁移指南的缓存版本。
【讨论】:
我没有看到迁移,只是比较? @Whitebird 看起来他们已经更改了该页面。我已经用他们以前的迁移指南的缓存版本编辑了我的答案。 在那个页面上他们只告诉你可以做到这一点,但没有具体说明如何做到这一点。【参考方案3】:我不建议您现在更改,它仍处于 BETA 版本,并且他们时不时会推出新东西。我建议等待。 让他们先下定决心:P
【讨论】:
yaa,甚至还没有合适的方法来做到这一点。【参考方案4】:我制作了一个脚本,用于将数据从 firebase 转换为 firestore
import AngularFirestore, AngularFirestoreCollection from 'angularfire2/firestore';
import AngularFireDatabase from 'angularfire2/database';
constructor(
private afs: AngularFirestore,
private angularfire: AngularFireDatabase
) convert()
this.itemsCollection = this.afs.collection('requests'); //ref()
this.angularfire.list('/requests/').auditTrail().subscribe((data: any) =>
_.each(data, element =>
this.itemsCollection.doc(element.key).set(element.payload.val())
.then((result) =>
);
);
);
【讨论】:
以上是关于如何将我的 Firebase 实时数据库转移到 Firebase Cloud Firestore的主要内容,如果未能解决你的问题,请参考以下文章
如何将我的用户的支出与他们在 Firebase 中的个人资料相关联?
在 Firebase 实时数据库中保存数据 Android Studio Kotlin