如何在Firebase Firestore Collection中构建版本化数据?

时间:2018-01-19 13:10:43

标签: firebase angularfire2 google-cloud-firestore

我需要将条目版本化为FireStore集合,并且我不确定构建数据的最佳方法,因此我只能加载最新版本的列表。

假设我们收集了Item个。每个Item都会包含其ID,标题,内容和修订号。每个版本都将更改内容,并提高转速。

存储修订的最佳方法是什么?

  • 每个版本都是集合中的全新Item
    • 它必须有一些回到父ID的链接
  • 或者Item包含自己的集合Revisions,每个集合都包含所有数据

我如何获得仅显示最新版本的Item列表?

对于选项2,我想您可以按dateCreatedlimitToFirst(1)订购?

但我必须加载主要集合,然后循环每个条目并加载其最新项目 - 而不是单词的结尾,但感觉有更好的方法。

2 个答案:

答案 0 :(得分:1)

最后,我选择了Revisions的子集合。主要文件保留了对最新/当前版本的参考。

我们简化了要求,因此我们只需要列表中的顶级数据,而不是修订版中的数据。

答案 1 :(得分:0)

根据Firebase团队的道格·史蒂文森(Doug Stevenson)的建议,他在此answer中建议一个StackOverflow问题,以便为每个开发环境创建一个单独的项目。到目前为止,这是我为我的项目概述的内容。

QA_PROJECT

  • CONTENT_COLLECTION
    • feeds_document
    • sources_document
  • USERS_COLLECTION
    • userOne_document
    • userTwo_document

PROD_PROJECT (与上面相同的子层次结构)

在测试新功能时,可以使用Firestore的export/Import capabilities拍摄稳定版本的“快照”,以便在需要时进行备份。